| |
| Alibre Design kommuniziert neue Produktkonzepte , ein Anwenderbericht
|
Autor
|
Thema: API Handshake klappt nicht mehr (1187 mal gelesen)
|
JoachimR Mitglied
Beiträge: 343 Registriert: 25.03.2007 WIN7 Geomagic Design 64 Bit - aktuelle freigegebene Version
|
erstellt am: 10. Jan. 2009 18:08 <-- editieren / zitieren --> Unities abgeben:
Hallo, hat jemand von Euch Api-Nutzern unter Vista schon den Handshake mit AlibreX.dll hinbekommen? Bei mir klappt das gar nicht. Habe dann versucht die AlibreX.dll von hand zu registrieren bzw. unregistrieren, aber auch da gibt es Probleme ("DLL Registerserver Eingangspunkt wurde nicht gefunden"). Bin grad echt am Verzweifeln, weil ich meine alten API Programm dringend brauche... Kann jemand helfen? Viele Grüße Joachim Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JoachimR Mitglied
Beiträge: 343 Registriert: 25.03.2007 WIN7 Geomagic Design 64 Bit - aktuelle freigegebene Version
|
erstellt am: 10. Jan. 2009 18:15 <-- editieren / zitieren --> Unities abgeben:
|
Ralf Schrödter Moderator Konstruktion & Support
Beiträge: 2287 Registriert: 17.02.2006 -> Windows 11- 64 bit -> i9 / Nvidia RTX -> Alibre-Design V27 -> Moi3D V5 -> KeyShot V11
|
erstellt am: 10. Jan. 2009 18:35 <-- editieren / zitieren --> Unities abgeben: Nur für JoachimR
|
JR Mitglied Konstrukteur
Beiträge: 106 Registriert: 21.10.2003
|
erstellt am: 11. Jan. 2009 09:27 <-- editieren / zitieren --> Unities abgeben: Nur für JoachimR
Hallo Joachim, unter Vista mit Alibre V11.1 funktioniert es bei mir so. Ich hoffe es hilft Dir weiter. Den Verweis füge ich wie folgt hinzu. Verweis hinzufügen / Registerkarte Durchsuchen / AlibreX.dll aus dem Alibre Program-Verzeichnis. Gruß Jörn Code:
using System; using System.Windows.Forms; using System.Runtime.InteropServices;using AlibreX; namespace ADTest { /// <summary> /// </summary> public partial class Workspace : Form { IAutomationHook _hook = null; IADRoot _root = null; private bool ConnectToAD() { try { _hook = (IAutomationHook)Marshal.GetActiveObject("AlibreX.AutomationHook"); _root = (IADRoot)_hook.Root; return true; } catch { return false; } // try } /// <summary> /// </summary> public Workspace() { InitializeComponent(); if (!ConnectToAD()) MessageBox.Show("Oops"); else MessageBox.Show("Ok"); } } }
[Diese Nachricht wurde von JR am 11. Jan. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JR Mitglied Konstrukteur
Beiträge: 106 Registriert: 21.10.2003 Alibre Design Expert V26 Keyshot 11.2
|
erstellt am: 11. Jan. 2009 09:51 <-- editieren / zitieren --> Unities abgeben: Nur für JoachimR
Hallo Joachim, hab gerade gesehen das Du ja VB verwendest und ich C#. Da wird Dir mein Beipiel wohl nicht weiterhelfen. Hast Du dir die API-Dokumentation für die V11 von der Alibre-HP runtergeladen ? Ich weiß zwar nicht ob es funktioniert, aber unter "Getting Started" steht beschrieben wie die AlibreX.tlb unter VB referenziert wird. Vielleicht hilfts ? Gruß Jörn
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JoachimR Mitglied
Beiträge: 343 Registriert: 25.03.2007 WIN7 Geomagic Design 64 Bit - aktuelle freigegebene Version
|
erstellt am: 11. Jan. 2009 10:39 <-- editieren / zitieren --> Unities abgeben:
|
JR Mitglied Konstrukteur
Beiträge: 106 Registriert: 21.10.2003
|
erstellt am: 11. Jan. 2009 11:14 <-- editieren / zitieren --> Unities abgeben: Nur für JoachimR
Hallo Joachim, hab es eben mal mit VB.NET ausprobiert und es funktioniert. Du mußt bei der DIM-Anweisung IAutomationHook (nicht AutomationHook) angeben. Gruß Jörn Code:
Public Class Workspace Private Sub OnFormLoad(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim hook As AlibreX.IAutomationHook Dim root As AlibreX.IADRoot hook = GetObject(, "AlibreX.AutomationHook") root = hook.Root root.CreateEmptyPart("c:\temp\test.adprt", False) End Sub End Class
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JoachimR Mitglied
Beiträge: 343 Registriert: 25.03.2007 WIN7 Geomagic Design 64 Bit - aktuelle freigegebene Version
|
erstellt am: 11. Jan. 2009 18:40 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, Danke, Danke und nochmals Danke !!!!!!!!!!! Du bist ein Held! Jetzt geht alles wieder. Sollen wir den Amis sagen, dass die API-Hilfe diesbezüglich falsch ist oder behalten wir das für uns? Vielen Dank und viele Grüße Joachim Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JR Mitglied Konstrukteur
Beiträge: 106 Registriert: 21.10.2003
|
erstellt am: 12. Jan. 2009 18:16 <-- editieren / zitieren --> Unities abgeben: Nur für JoachimR
Hallo Joachim, freut mich das es wieder funktioniert. Zitat: Original erstellt von JoachimR: Sollen wir den Amis sagen, dass die API-Hilfe diesbezüglich falsch ist oder behalten wir das für uns?
Das haben die bestimmt auch schon gemerkt Gruß Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |