Visual Basic 6.0 için seri port / paralel port işlemleri

By phantomComments Off on Visual Basic 6.0 için seri port / paralel port işlemleri
Paralel ve seri portların var olup olmadığını öğrenmek için fonksiyonlar.
Dönen değerler True ise port mevcuttur.
 

Seri Port isimlerini bulmak için fonksiyon

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

Paralel Port isimlerini bulmak için fonksiyon

Function IsLptPortAvailable(ByVal portNum As Integer) As Boolean
Dim fnum As Integer
On Error Resume Next
fnum = FreeFile
Open "LPT" & CStr(portNum) For Binary Shared As #fnum
If Err = 0 Then
Close #fnum
IsLptPortAvailable = True
End If
End Function

Portların sayısını bulmak için yukarıdaki fonksiyonları çağırmalıyız.
Bu fonksiyonların kullanılması zorunlu değildir.

Seri Portlar için

Dim count As Integer, i As Integer
 For i = 1 To 16
  If IsComPortAvailable(i) Then count = count + 1
 Next
MsgBox  count & "adet seri port bulundu"

Paralel Portlar için

Dim count As Integer, i As Integer
For i = 1 To 16
If IsLptPortAvailable(i) Then count = count + 1
Next
MsgBox  count & "adet paralel port bulundu"

 Paralel veya seri portta işlem yapmak için

Geçerli Port numarası öğrenildikten sonra bu fonksiyon kullanılarak açılır.
fnum değişkeni açık olduğu bilinen port numarasıdır. Burada sadece LPT için işlem yapılmıştır.
COM için sadece gerekli kısım değiştirilmelidir.

Public Sub OpenPort(ByVal PortNum As Integer)
Dim fnum As Integer
fnum = FreeFile
Open "LPT" & CStr(PortNum) For Output As #fnum
FileNumber = fnum
End Sub

Açılan porta string değişken bu fonksiyonla gönderilir.

Public Sub SendToPort(ByVal PortNum As Integer, ByVal Data As Byte)
Write #CStr(FileNumber), Data
End Sub

İşimiz bittiğinde portun kapatılması gereklidir.

Public Sub ClosePort(ByVal PortNum As Integer)
Close #CStr(PortNum)
End Sub


Elektronik- TR, TR
Blue Taste Theme created by Jabox