Visual Basic, kommunisera med parallellporten
Visual Basic, kommunisera med parallellporten
Jag skulle vilja göra ett litet EXE program i Visual Basic som kan ta ett eller flera argument så att jag kan slå på och av pinnar i parallellporten på en dator med WinXP.
Tanken är att jag ska kunna använda mig av denna exe-fil från ett annat program för att kunna styra paralellporten genom att sända en "kör" kommando med argument som styr vad jag vill göra.
Om någon har någon vet hur man gör en exe fil för att styra parallellporten, och till och med kan klistra in hur denna kod skulle se ut, vore jag ytterst tacksam.
Tanken är att jag ska kunna använda mig av denna exe-fil från ett annat program för att kunna styra paralellporten genom att sända en "kör" kommando med argument som styr vad jag vill göra.
Om någon har någon vet hur man gör en exe fil för att styra parallellporten, och till och med kan klistra in hur denna kod skulle se ut, vore jag ytterst tacksam.
KOlla : http://www.maxim-ic.com/appnotes.cfm/ap ... umber/1142
Där används dlportio och VB för att snacka med parr-porten.
I och för sig till en speciell Maxim krest, men de delarna av källkoden
får du väl blunda för...
EDIT : Om du är nyfiken så ser VB deklarationerna ut så här:
Dokumentation till varje funktion finns antagligen tillsammans med dlportio...
Där används dlportio och VB för att snacka med parr-porten.
I och för sig till en speciell Maxim krest, men de delarna av källkoden
får du väl blunda för...
EDIT : Om du är nyfiken så ser VB deklarationerna ut så här:
Kod: Markera allt
'****************************************************************************
'* DriverLINX Port I/O Driver Interface
'* <cp> Copyright 1996-1999 Scientific Software Tools, Inc.<nl>
'* DriverLINX is a registered trademark of Scientific Software Tools, Inc.
'* Win32 Prototypes for DriverLINX Port I/O
'****************************************************************************
'
Public Declare Function DlPortReadPortUchar Lib "dlportio.dll" (ByVal Port As Long) As Byte
Public Declare Function DlPortReadPortUshort Lib "dlportio.dll" (ByVal Port As Long) As Integer
Public Declare Function DlPortReadPortUlong Lib "dlportio.dll" (ByVal Port As Long) As Long
Public Declare Sub DlPortReadPortBufferUchar Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Public Declare Sub DlPortReadPortBufferUshort Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Public Declare Sub DlPortReadPortBufferUlong Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Public Declare Sub DlPortWritePortUchar Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Byte)
Public Declare Sub DlPortWritePortUshort Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Integer)
Public Declare Sub DlPortWritePortUlong Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Long)
Public Declare Sub DlPortWritePortBufferUchar Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Public Declare Sub DlPortWritePortBufferUshort Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Public Declare Sub DlPortWritePortBufferUlong Lib "dlportio.dll" (ByVal Port As Long, Buffer As Any, ByVal Count As Long)
Jag har för mig att det är skillnad på 98 och NT/2000/XP. Men du kan iaf få dom filerna jag har, så kan du prova om det funkar med dom för 98'an, eller med den för NT och C.
Om du vill kan du skicka ett tomt mail till "larsboy@xxxxx.xx" så skickar jag filerna i retur.
Edit1-2: Får väl göra en liten ändring då, sen tar jag iaf bort den.
Edit 3: Nu e den borta.
/// Jojje
Om du vill kan du skicka ett tomt mail till "larsboy@xxxxx.xx" så skickar jag filerna i retur.
Edit1-2: Får väl göra en liten ändring då, sen tar jag iaf bort den.
Edit 3: Nu e den borta.
/// Jojje
Senast redigerad av jojje 7 juni 2006, 11:32:56, redigerad totalt 3 gånger.
jag använder inpout32.dll
dll + testapplikationer för bl.a VB6: http://www.logix4u.net/inpout32_source_and_bins.zip
här finns exempel för VB dot NET: http://www.lvr.com/parport.htm (en bit ner)
dll + testapplikationer för bl.a VB6: http://www.logix4u.net/inpout32_source_and_bins.zip
här finns exempel för VB dot NET: http://www.lvr.com/parport.htm (en bit ner)
Jag rekommenderar IO.DLL, enkel och snabb. Finns programmeringsexempel för Visual Basic på hemsidan: http://www.geekhideout.com/iodll.shtml
För att se om något ändras på parallelporten kan du använda Parmon från samma sida:
http://www.geekhideout.com/parmon.shtml
För att se om något ändras på parallelporten kan du använda Parmon från samma sida:
http://www.geekhideout.com/parmon.shtml
det är stor skillnad på Win9X/WinMe och WinNT/Win2k/WinXP... Windows ME som bygger på 9x har inget direkt skydd för att skriva till I/O portar. WinXP (Windows NT 5) har däremot det, dock är jag rätt säker på att DLL filerna fixar med I/O tillstånd mot operativsystemet.
Kan rekommendera både IO.dll och inpout32.dll tycker både löser problemet jätte bra. Annars kan du ju skriva en egen DLL fil i ex NASM om det är så att du behöver fler lågnivå funktioner och inte vill ha massa krav på olika DLL:er. (Kräver dock att du kan x86 ASM, C eller liknande kan även användas dock inte till alla lågnivå funktioner).
Kan rekommendera både IO.dll och inpout32.dll tycker både löser problemet jätte bra. Annars kan du ju skriva en egen DLL fil i ex NASM om det är så att du behöver fler lågnivå funktioner och inte vill ha massa krav på olika DLL:er. (Kräver dock att du kan x86 ASM, C eller liknande kan även användas dock inte till alla lågnivå funktioner).