Laden...

Was bewirkt nun die Eigenschaft Visible in Powerpoint?

Erstellt von Caveman vor 7 Jahren Letzter Beitrag vor 7 Jahren 1.403 Views
Caveman Themenstarter:in
187 Beiträge seit 2009
vor 7 Jahren
Was bewirkt nun die Eigenschaft Visible in Powerpoint?

Hallo,

ich bin dabei, ein Projekt mit automatischer Erstellung von Powerpointdateien, in ein anderes Projekt zu integrieren.
Bisher arbeitete die Anwendung "relativ" langsam, da Powerpoint dabei geöffnet war und man bei der Erstellung zusehen konnte. Das möchte ich nun optimieren indem ich die Dateien erstelle, ohne dass dabei Powerpoint geöffnet ist.
Dazu habe ich nun folgenden Code:


        private Powerpoint.Application powerpoint;
        private Powerpoint.Presentation presentation;

        protected RwPowerpointApplication(bool visible) : this()
        {
            if (powerpoint != null)
            {
                if (visible)
                {
                    powerpoint.Visible = Office.MsoTriState.msoTrue;
                }
                else
                {
                    powerpoint.Visible = Office.MsoTriState.msoFalse;
                }
            }
        }

        protected void AddPresentation()
        {
            presentation = powerpoint.Presentations.Add(WithWindow: Office.MsoTriState.msoFalse);
        }

Wenn ich nun an den Konstruktor ein false übergebe, dann öffnet Powerpoint und erstellt die Dateien, ohne dabei die Folie anzuzeigen. Verantwortlich dafür ist die Add-Methode, der ebenfalls ein false übergeben wird.
Übergebe ich an den Konstruktor ein false, dann funktioniert gar nichts mehr! Es wird aber auch kein Fehler oder eine Ausnahme erzeugt. Es passiert einfach nichts mehr.
Habe mal Google danach befragt, aber keine brauchbaren Antworten dazu gefunden.
Aber offenbar ist es so, dass Powerpoint in jedem Fall geöffnet sein muss, da viele Funktionen nur dann funktionieren.
Kann mir hier jemand mitteilen, was die Visible-Eigenschaften nun genau bewirken soll?

16.841 Beiträge seit 2008
vor 7 Jahren

.. und wieso nutzt Du nicht OpenXML?
Eine Anwendung extern zu steuern wird immer lansam(er) sein.

Visible muss meines Wissens - zumindest war das früher so - schon beim Öffnen der Anwendung durch die Open-Methode angegeben werden; nicht erst danach über eine Eigenschaft.

Caveman Themenstarter:in
187 Beiträge seit 2009
vor 7 Jahren

.. und wieso nutzt Du nicht OpenXML?

Einfache Antwort. Ich wusste bis jetzt nicht, dass es das gibt.
Ich werde mal danach googeln.