LabVIEWForum.de
mit COM-API kommunizieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: ActiveX & .Net (/Forum-ActiveX-Net)
+---- Thema: mit COM-API kommunizieren (/Thread-mit-COM-API-kommunizieren)

Seiten: 1 2 3 4


mit COM-API kommunizieren - luna - 27.04.2021 16:42

Hallo Zusammen,

ich habe hier eine Modul mit API Schnittstelle. Hat jemand eine Idee, wie ich mit den COM_API kommunizieren kann?

Es muss eine XML Datei in Modul hochgeladen
PC(Ethernet)------------------(COM-API)Modul


RE: mit COM-API kommunizieren - GerdW - 27.04.2021 17:24

Hallo luna,

stelle doch mal ein BeispielVI und einen Link auf dieses "Modul" bereit…


RE: mit COM-API kommunizieren - jg - 27.04.2021 17:51

Hallo luna,

zu wenig Infos, API steht allgemein für "Application Programming Interface", COM für Component Object Model.

Alles sehr generisch, was du das gerade in die Runde wirfst. Glas2

Mehr Infos bitte. Welche COM-API?

Gruß, Jens


Visual Basic zu LabVIEW - luna - 29.04.2021 13:29

Hallo zusammen,
kann mir jemand weiter helfen den programteil in LabVIEW zu schreiben.

Es ist mit Visual Basic geschrieben

Sub OpenLoad()

'access CommCtrlAccess
Set ctrla = CreateObject("ETAS.PTS.PINCONTROLV2.CommCtrl.CommCtrlAccess")

'using CommCtrlAccess class you can try to access the singleton instance
Set ctrl = ctrla.CommCtrlInstance

Dim returnValue As Integer
Dim XMLPath As String

' XMLPath is the Path to the WireHarness XML
XMLPath = Worksheets("ES4440WireHarnessSignals").Range("G5").Value

Call MsgBox("Initializing Error Simulation with Wireharness File: " & XMLPath, 0, "ES4440 Example")
returnValue = ctrl.InitErrorSimulationUsingFile(XMLPath)

Call MsgBox("Doing an Open Load on Unit under Test: ECU1, Pin: A1", 0, "ES4440 Example")
returnValue = ctrl.OpenLoad("ECU1", "A1", 0, 1)
returnValue = ctrl.ActivateRelay(-1)

Call MsgBox("Confirm to Reset Error.", 0, "ES4440 Example")
returnValue = ctrl.ResetAllErrors()


'free CommCtrl Singleton instance
Call ctrla.FreeCommCtrlInstance

Call MsgBox("OpenLoad Test complete", 0, "ES4440 Example")
End Sub


RE: mit COM-API kommunizieren - GerdW - 29.04.2021 13:43

Hallo luna,

endlich mal konkretere Angaben zu diesem "COM-API".
Du verwendest also ein ETAS-Gerät und willst nicht per Excel/VBA damit kommunizieren!?

(Im Manual gibt es auch eine Kontaktadresse zum technischen Support bei ETAS…)


RE: mit COM-API kommunizieren - luna - 29.04.2021 14:00

für dieses Modul kann den Support keine Unterstützung geben.


RE: mit COM-API kommunizieren - GerdW - 29.04.2021 14:14

Hallo luna,

Zitat:für dieses Modul kann den Support keine Unterstützung geben.
Ist es zu alt?

Zitat:Set ctrla = CreateObject("ETAS.PTS.PINCONTROLV2.CommCtrl.CommCtrlAccess")
Hier wird lt. MSDN ein ActiveX-Objekt erstellt.
Das müsstest du in LabVIEW dann eben mit den Funktionen der ActiveX-Palette erledigen.

Zitat:Call MsgBox("…")
returnValue = ctrl.InitErrorSimulationUsingFile(XMLPath)
returnValue = ctrl.OpenLoad("ECU1", "A1", 0, 1)
returnValue = ctrl.ActivateRelay(-1)
returnValue = ctrl.ResetAllErrors()
Hier werden Methoden des Objektes aufgerufen, auch dies müsstest du mit den Funktionen der ActiveX-Palette erledigen…
MsgBox ist wieder ein VBA-Befehl.


RE: mit COM-API kommunizieren - jg - 29.04.2021 16:39

Hallo luna,

ich kann Gerd nur zustimmen, ActiveX-Object in LabVIEW anlegen, und dann nach den entsprechenden Property- und Invokenodes suchen.

Der Anfang ist meistens so was hier:
[attachment=61810]
Korrektes Objekt auswählen (muss auf deinem Rechner installiert sein!), und dann beginnt der Trial&Error mit Eigenschaften und Methoden.

Gruß, Jens


RE: mit COM-API kommunizieren - luna - 10.05.2021 14:50

hallo zusammen,

Ich möchte ein ActiveX Control in mein Frontpanel einbauen.

Ich platziere einen ActiveX Container auf meinem Frontpanel. Ich wähle mit Rechtsklick "Insert ActiveX Object" da weiße ich nicht was für Visuell Basic geeignet.


RE: mit COM-API kommunizieren - jg - 10.05.2021 16:47

Hallo Luna,

du musst schon selber wissen, welches ActiveX-Element du im Frontpanel anzeigen willst.

Der Anfang ist schon mal richtig, ActiveX-Container anlegen, dann Rechtsklick -> Insert ActiveX-Object -> in der Liste dein gewünschtes Objekt auswählen.

Gruß, Jens