LabVIEWForum.de
SMC800 Steuerung über DLL file - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: SMC800 Steuerung über DLL file (/Thread-SMC800-Steuerung-ueber-DLL-file)



SMC800 Steuerung über DLL file - t0mmy - 09.03.2009 18:04

Hallo Zusammen,

ich habe im internet eine dll file gefunden mit der man den SMC800 über den parallel port ansteuern kann. die dll funktioniert auch. ein entsprechendes test programm habe ich auch gefunden.

ich hab die dll (emis_pbl.dll) jetzt in LabVIEW eingebunden. LabVIEW erkennt auch alle funktionen richtig. allerdings ist darunter eine funktion "Ini_WinIo_QueryPerformance" die eine weitere dll laden möchte "winio.dll". wenn ich das programm ausführe kommt immer "InitializeWinio failed". ich habe diese winio.dll schon in alle möglichen windows und projekt verzeichnise kopiert. hat aber alles nichts geholfen. eigentlich weiß ich auch nicht genau, ob LabVIEW sie bloß nicht findet oder ob es mit dem laden selbst ein problem hat? neben der "winio.dll" sind noch zwei weitere files mit dabei: winio.sys und winio.vxd. LabVIEW verlangt sie zwar nicht explizit, das testprogramm hat sie aber trotzdem gebraucht.... ich würde sie auch gerne hochladen, das forum erlaubt es mir aber nicht... die dateien sind aber auch alle unter http://www.emisgmbh.de/antriebs/smc/smc800...800_befehle.zip zu sehen, das testprogramm inklusive...

hat jemand von euch eine idee was ich machen könnte bzw. wie ich sehen kann, was eigentlich das problem ist?


liebe grüße
t0mmy


SMC800 Steuerung über DLL file - rolfk - 09.03.2009 19:47

' schrieb:Hallo Zusammen,

ich habe im internet eine dll file gefunden mit der man den SMC800 über den parallel port ansteuern kann. die dll funktioniert auch. ein entsprechendes test programm habe ich auch gefunden.

ich hab die dll (emis_pbl.dll) jetzt in LabVIEW eingebunden. LabVIEW erkennt auch alle funktionen richtig. allerdings ist darunter eine funktion "Ini_WinIo_QueryPerformance" die eine weitere dll laden möchte "winio.dll". wenn ich das programm ausführe kommt immer "InitializeWinio failed". ich habe diese winio.dll schon in alle möglichen windows und projekt verzeichnise kopiert. hat aber alles nichts geholfen. eigentlich weiß ich auch nicht genau, ob LabVIEW sie bloß nicht findet oder ob es mit dem laden selbst ein problem hat? neben der "winio.dll" sind noch zwei weitere files mit dabei: winio.sys und winio.vxd. LabVIEW verlangt sie zwar nicht explizit, das testprogramm hat sie aber trotzdem gebraucht.... ich würde sie auch gerne hochladen, das forum erlaubt es mir aber nicht... die dateien sind aber auch alle unter http://www.emisgmbh.de/antriebs/smc/smc800...800_befehle.zip zu sehen, das testprogramm inklusive...

hat jemand von euch eine idee was ich machen könnte bzw. wie ich sehen kann, was eigentlich das problem ist?
liebe grüße
t0mmy
WinIO ist der User Space Teil einer Lösung um physikalische IO Adressen im PC anzusprechen. Das ging in Windows 9x und Me noch ganz einfach mit einem assembly Befehl direkt im User Space aber unter allen NT Abkömmlingen worunter auch 2K, XP und Vista laufen, sind das protected OpCodes die nur im Kernel ausgeführt werden dürfen. Das heisst die DLL muss auch noch mit einem Kernel Driver (*.sys file) kommen, der installierte sein muss. Installation eines Kernel Treibers ist übrigens nur mit Administrator Rechten zugestanden.

Kopieren der DLL und des dazugehörigen Treibers in das Directory wo LabVIEW.Exe sich befindet, sollte genug sein.

Rolf Kalbermatter