VB6 - Anslutningsbara comportar?
Postat: 4 mars 2007, 10:37:19
Det jag behöver göra är altså något som kan kolla om en comport går att använda och ansluta till, kanske låter lite konstigt men ni förstår säkert.
Om jag har en dropdown-list med 10 comportar i , com1 - com10 så vill jag att dom jag kan använda och ansluta ska vara gröna och resten ska vara röda och spärras från anslutningsförsök från användaren.
Utan denna check så stängs programet om man försöker ansluta en felaktig port och detta vil jag komma undan.
Hittade denna kod på nätet men resultatet är inte det jag är ute efter, av denna får jag fram hur många comportar som finns installerade men inte vilka som jag kan använda.
Hoppas nån kan ge mig lite hjälp här.
[edit]
Oj, jag tror inte jag kollade igenom koden riktigt ska testa att ändra lite, då den såg ganska användbar ut...
[edit2]
Såg att detta var precis den koden jag behövde som grund, får skylla på att jag var lite trött
Men jag låter tråden vara kvar ifall någon annan finner informationen användbar.
[edit3]
Problemet kvarstår, har fortfarande samma problem som från första början, koden talar bara om "installerade" comportar inte dom portarna som går att använda.
Hjälp sökes forfarande.
Om jag har en dropdown-list med 10 comportar i , com1 - com10 så vill jag att dom jag kan använda och ansluta ska vara gröna och resten ska vara röda och spärras från anslutningsförsök från användaren.
Utan denna check så stängs programet om man försöker ansluta en felaktig port och detta vil jag komma undan.
Hittade denna kod på nätet men resultatet är inte det jag är ute efter, av denna får jag fram hur många comportar som finns installerade men inte vilka som jag kan använda.
Kod: Markera allt
Dim count As Integer, i As Integer
For i = 1 To 16
If IsComPortAvailable(i) Then count = count + 1
Next
MsgBox "Found " & count & " serial ports"
'******************Funktionen:**************
Function IsComPortAvailable(ByVal portNum As Integer) As Boolean
Dim fnum As Integer
On Error Resume Next
fnum = FreeFile
Open "COM" & CStr(portNum) For Binary Shared As #fnum
If Err = 0 Then
Close #fnum
IsComPortAvailable = True
End If
End Function
[edit]
Oj, jag tror inte jag kollade igenom koden riktigt ska testa att ändra lite, då den såg ganska användbar ut...
[edit2]
Såg att detta var precis den koden jag behövde som grund, får skylla på att jag var lite trött

Men jag låter tråden vara kvar ifall någon annan finner informationen användbar.
[edit3]
Problemet kvarstår, har fortfarande samma problem som från första början, koden talar bara om "installerade" comportar inte dom portarna som går att använda.
Hjälp sökes forfarande.