2017-03-29 3 views
1

Gibt es eine Möglichkeit, eine Präsentation aus einem Stream, einer Speicherdatei oder einem isolierten Speicher zu öffnen?Dokument aus einem Stream öffnen

Ich habe eine Präsentationsdatei, die ich in PowerPoint öffnen möchte, aber nicht Benutzer auf die Datei zugreifen möchten. Leider akzeptiert die Presentations.Open()-Funktion von PowerPoint (und Open() aller anderen Office-Anwendungen) nur einen Pfadparameter, was bedeutet, dass ich die Datei irgendwo auf der Festplatte speichern und dann in PowerPoint öffnen muss, wodurch der Benutzer Zugriff auf die Datei erhält.

Hat jemand dies in einer Office-Anwendung getan?

+0

Wäre es ausreichend, die Datei über eine URL zu öffnen, die dem Benutzer nicht zugänglich ist? Das würde immer noch eine temporäre Datei auf der Festplatte des Benutzers hinterlassen, zumindest für die Dauer der Offenlegung der Präsentation, möglicherweise länger, also möglicherweise nicht akzeptabel. –

+0

@SteveRindsberg: Ja, diese temporäre Datei ist nicht akzeptabel. Office-Anwendungen zeigen immer den Pfad der Dokumente im Backstage-Bereich (Registerkarte "Info") an, sodass es sehr trivial ist zu wissen, wo sich die Dokumente befinden. – dotNET

Antwort

0

Sie können das OpenXML SDK zu open documents from a stream, aber nicht aus einer Office-Anwendung verwenden.

Aber, wenn Sie genug motiviert sind, könnten Sie die Datei löschen, nachdem sie geschlossen wurde. Es ist ziemlich einfach, Sie müssen nur einen separaten Prozess erstellen und warten, bis die Datei nicht mehr für das Schreiben gesperrt ist. Oder wenn Sie wissen, wann es geschlossen ist (z. B. wenn Sie den Abschlusscode eingeben), benötigen Sie möglicherweise keinen separaten Prozess.

+0

Während die Datei in der Anwendung geöffnet ist, zeigt die Office-Anwendung immer ihren Pfad an und erleichtert so das Kopieren. – dotNET

+0

Sie haben Recht. Sie können nicht verhindern, dass sie es kopieren. Wenn es sich bei dem zu öffnenden PowerPoint-Punkt um eine VSTO-Vorlage/ein VSTO-Dokument handelt, können Sie einige Dokumenteigenschaften oder -variablen festlegen, um das Dokument automatisch zu schließen, wenn es nicht auf die genehmigte Weise geöffnet wurde. Es gibt wirklich keine Möglichkeit, es vollständig zu kontrollieren. – Chris

Verwandte Themen