none
PowerPoint Präsentationen in einer Winform anzeigen RRS feed

  • Frage

  • Seid mir gegrüßt,

    --- Altes Thema...

    da ich PowerPoint Präsentation in meine Winform unter c#.net einbinden möchte, habe ich mir den PowerPoint Viewer 2007 installiert, mit seinen 2 Service Packs.

    Nun wollte ich dessen Library auch in mein Projekt mit einbinden, allerdings wird er mir in der Auwahl unter .NET Komponenten und COM Komponenten nicht angezeigt. Gehe ich nun über die manuelle Auswahl mit Pfad zu deren Standort ("C:\Program Files (x86)\Microsoft Office\Office12\1033\PPVWINTL.DLL") und versuche sie hinzu zufügen, bekomme ich die Fehlermeldung "A reference to 'C:\Program Files (x86)\Microsoft Office\ Offcie12\1033\PPVWINTL.DLL' could not be added. Please male sure that the file is a accessible, and that it is a valid assembly or COM component.".

    Gibt es vielleicht eine andere DLL welche man einbinden muss um den Viewer nutzen zu können oder brauch ich einen anderen Viewer?

    Achja, ich nutze Visual Studio 2008 unter Windows Vista Business 64 .


    --- ... hat sich erledigt, der Viewer unterstützt dies Funktionalität nicht mehr, genauso wenig wie der 2003er.


    Wenn jemand von euch einen Vorschlag auf Lager hat,
    wie ich Präsentationen in meine Winform einbinden kann, dann wäre ich natürlich über diese Tipps dankbar.

    Bitte beachtet aber hier bei, das ich kein WebBrowser Control einsetzen möchte und keine Controls Dritter, nur rein Microsoft.

    Über eure Hilfe wäre ich sehr dankbar.


    Grüße, Marcus.
    Montag, 31. August 2009 08:53

Antworten

  • Also die Registrierung läuft im Programmstart reibungslos ab, die Exeption kommt trotzdem beim Öffnen von PPTX Dateien.

    ---

    Mein nächstes Problem,

    der DSO Framer unstützt auch keinen Aufruf zum Start von Präsentation, so bald ich es in Erfahrung bringen konnte, außer man startet die Präsentation separat mit dem Drücken der [F5] Taste...

    Hat sich erledigt, ich verwende die SendKeys Klasse um dem Control, wenn es eine Präsentation geladen hat, den Druck der [F5] - Taste vorzugaukeln.
    Donnerstag, 3. September 2009 13:07

Alle Antworten

  • Ein Control von Microsoft habe ich bereits "erfolgreich" nutzen können, das war das DSO Framer Control Object.
    Leider kann diese Control aber nur Präsentationen mit dem Format ".PPT" (97 - 2003) nutzen. Ich benötigeaber auch Präsentationen in dem Format ".PPTX" von Office 2007.
    Dienstag, 1. September 2009 09:25
  • Hallo  Marcus,

    Wenn Du folgendes herunterladest und installierst dann findest Du in dem Ordner C:\DsoFramer\Samples\Vb7Test\ die Datei VB7TestApp.exe. Ich habe sie laufen lassen

    und ich könnte mir ein .pptx auswählen und es erfolgreich anzeigen.

    Microsoft Developer Support Office Framer Control 1.3 Sample (KB 311765) à

    http://www.microsoft.com/downloads/details.aspx?FamilyId=CE2CA4FD-2169-4FAC-82AF-770AA9B60D77&displaylang=en

    Grüße,

    Robert

    Dienstag, 1. September 2009 10:45
    Moderator
  • Grüß dich Robert,

    diesen DSP Framer von deinem Link nutze ich ja schon.

    Wenn ich PPTX Präsentationen öffnen möchte, mit:

    else if (resultData.EndsWith(".ppt") == true || resultData.EndsWith(".pptx") == true)
                    axFramerControl1.Open(resultPath);
    erhalte ich die Exception: "Exception has been thrown by the target pf an invocation.".

    Gibt es eine Einstellung, die ich übernehme muss um den DSO dafür zu aktivieren.

    Grüße, Marcus
    Donnerstag, 3. September 2009 08:00
  • Hallo Marcus,

    Was ist der InnerException-Text?

    Grüße,

    Robert

    Donnerstag, 3. September 2009 08:10
    Moderator
  • Guten Morgen Robert,

    Inner Expetion {"The associated COM server does not support ActiveX Document embedding."}
    Data {System.Collections.ListDictionaryInternal}
    ErrorCode -2147217149
    Stacktrace "   at DSOFramer._FramerControl.Open(Object Document, Object ReadOnly, Object ProgId, Object WebUsername, Object WebPassword)"
    TargetSite {Void Open(System.Object, System.Object, System.Object, System.Object, System.Object)}
    Donnerstag, 3. September 2009 08:18
  • Hallo Marcus,

    Hast Du auch das Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats installiert?

    http://www.microsoft.com/downloads/details.aspx?familyid=941B3470-3AE9-4AEE-8F43-C6BB74CD1466&displaylang=en

    Grüße,

    Robert

    Donnerstag, 3. September 2009 08:44
    Moderator
  • Ja ist installiert, trotzdem kommt die selbe Exception. :-/
    Donnerstag, 3. September 2009 08:51
  • Hallo Marcus,

    Gibt es in Deinem Projekt bei References beide Referenzen: AxDSOFramer (Pfad: c:\DsoFramer\Samples\Vb7Test\Src\obj\AxInterop.DSOFramer.dll) und DSOFramer (Pfad: c:\DsoFramer\Samples\Vb7Test\Src\obj\Interop.DSOFramer.dll)?

    Grüße,

    Robert

    Donnerstag, 3. September 2009 09:27
    Moderator
  • Ja, beide sind vorhanden.
    Donnerstag, 3. September 2009 09:33
  • Hallo Marcus,

    Lass mal laufen folgendes exe: C:\DsoFramer\Samples\Vb7Test\Src\bin\Vb7TestApp.exe, benutze den Knopf „OpenFile“ und wähle Dir ei pptx. Kommt auch hier die Fehlermeldung?

    Grüße,

    Robert

    Donnerstag, 3. September 2009 10:12
    Moderator
  • Ja, selbe Fehlermeldung.
    Donnerstag, 3. September 2009 10:14
  • Hallo Marcus,

    Versuch mal das ocx registrieren:

    Start à Run à cmd und dann das Befehl regsvr32 C:\DSOFramer\dsoframer.ocx

    Grüße,

    Robert

    Donnerstag, 3. September 2009 10:41
    Moderator
  • Nicht gut, da das bei vielen verschiedenen Kunden laufen soll und da nicht überall der Command ausgeführt werden soll. :)

    Naja ich kriegs schon noch hin.

    Ich versuche gerade dem DSO Frame zu sagen, das er die Presentation starten soll like F5.
    Donnerstag, 3. September 2009 10:55
  • Hallo Marcus,

    Aber so funktioniert es bei Dir? Weil du könntest Dann das Befehl vom Code laufen lassen.

    Grüße,

    Robert

    Donnerstag, 3. September 2009 10:57
    Moderator
  • Benötigt diese Befehl nicht ein gewissen Mass an Rechten, können ihn Gäste und/oder Benutzer ausführen?
    Donnerstag, 3. September 2009 11:04
  • Donnerstag, 3. September 2009 11:28
    Moderator
  • Also die Registrierung läuft im Programmstart reibungslos ab, die Exeption kommt trotzdem beim Öffnen von PPTX Dateien.

    ---

    Mein nächstes Problem,

    der DSO Framer unstützt auch keinen Aufruf zum Start von Präsentation, so bald ich es in Erfahrung bringen konnte, außer man startet die Präsentation separat mit dem Drücken der [F5] Taste...

    Hat sich erledigt, ich verwende die SendKeys Klasse um dem Control, wenn es eine Präsentation geladen hat, den Druck der [F5] - Taste vorzugaukeln.
    Donnerstag, 3. September 2009 13:07