Thema: Delphi ActiveX einbinden

Einzelnen Beitrag anzeigen

Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#2

Re: ActiveX einbinden

  Alt 30. Okt 2003, 14:10
hi,

Ich weiss jetzt nicht was der beste Weg ist, aber ich hab sowas ähnliches so gelöst:

Suche im Code (Typelibrary) von deinem ActiveX nach sowas ähnlichen:

ClassID: '{591091BD-DF3E-4C2A-B91F-C29559D04590}'; Die CLSID (in den geschwungenen Klammern) wird bei dir einen anderen Wert haben. Nach dem suchst du in der Registry. Dort suchst du nach einen Eintrag so ähnlich wie das Bild im Anhang. Der Text im roten Kästchen ist der Klassenname meiner ActiveX-Kompo.

Du machst eine Variable vom Typ Variant
Delphi-Quellcode:
..
ActiveXVariable : Variant;
..
So kreierst du den Objekt (das S7TCPIP.S7TCP ist der Klassenname den du in der Registry findest)

  ActiveXVariable := CreateOleObject('S7TCPIP.S7TCP') So gibst du es wieder frei
  ActiveXVariable := Unassigned; Dazwischen kannst du dein Objekt ganz normal verwenden, allerdings gibts auf diesem Weg keine Typprüfung und auch keine Codevervollständigung. Es gibt noch einen anderen Weg, bei dem du diese Vorteile wieder hast, aber den hab ich leider nicht zu laufen bekommen.

BTW: Gehe ich recht in der Annahme, dass du auf S5-SPS zugreifen willst? Ich arbeite gerade an einer Kompo zur Kommuniktion mit einer S7 und bin soweit, dass ich mit der SPS kommunizieren kann, aber die Werte noch nicht richtig auslese.
Miniaturansicht angehängter Grafiken
clsid.jpg  
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat