Laden...

WPF UserControl mit Adobe Reader ActiveX ohne Interop

Erstellt von Taladan vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.988 Views
Taladan Themenstarter:in
582 Beiträge seit 2008
vor 14 Jahren
WPF UserControl mit Adobe Reader ActiveX ohne Interop

Hallo,

ich habe diesen Quellcode verwendet,
Adobe Reader ActiveX ohne Interop-Verweis versionsunabhängig in Windows.Forms hosten
um mir eine WPF Control zu erstellen, die dann ein Windowsformhost und diese wiederum die o.g. Komponente enthält.
Jedoch bekomme ich an jener Stelle


this.GetOcx().GetType().InvokeMember("LoadFile", BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, this.GetOcx(), new object[1] { path });

eine Bugmeldung, das das Element nicht auf eine Instantz festgelegt wurde.

Und zwar scheint er den Typen nicht zurück zu liefern (GetType)

Gruß dat Tala

6.862 Beiträge seit 2003
vor 14 Jahren

Dann wird wohl irgend ein Objekt was da durch die Methodenaufrufe irgendwo zurückkommt null sein. Siehe dazu. [FAQ] NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt So verschachtelte Funktionsaufrufe lassen sich recht schlecht debuggen. Ich denke den Fehler findest du schneller wenn du die Verschachtelung auflöst und die Methoden einzeln aufrufst.

Baka wa shinanakya naoranai.

Mein XING Profil.

Taladan Themenstarter:in
582 Beiträge seit 2008
vor 14 Jahren

Jepp


object Ocx = this.GetOcx();
            System.Type typ = Ocx.GetType();
            typ.InvokeMember("LoadFile", BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, Ocx, new object[1] { path });

Beim OCX Object wird nichts zurück geliefert. Weiß aber nicht warum. Einziger unterschied ist, das es sich einmal um ein Win32 projekt handelt und bei meiner control um wpf.

Gruß dat Tala

6.862 Beiträge seit 2003
vor 14 Jahren

Bei mir tut schon das Beispielprojekt von Rainbird nicht, bekomme aber ne COM Exception. Ich denke du solltest dich an Rainbird wenden, der kann dir sicherlich weiterhelfen können wenns um ActiveX Controls geht.

Baka wa shinanakya naoranai.

Mein XING Profil.

Taladan Themenstarter:in
582 Beiträge seit 2008
vor 14 Jahren

Wahrscheinlich hast du ein 64er System oder Adobe Reader nicht installiert?

Gruß dat Tala

6.862 Beiträge seit 2003
vor 14 Jahren

Weder noch. Adobe Reader 9 auf Win7 32 Bit.

Baka wa shinanakya naoranai.

Mein XING Profil.