Konu: Serial portu bulamiyorum
Merhaba herkese!
Kullanıcı program ile hangi serial port üzerinden bir cihaz ile haberleşmek istediğini "ayarlar sayfasında" belirtiyor.
Bunun için bilgisayarda kaç ve hangi com-portlar mevcut olduğunu şöyle tespit ediyorum ve bir listbox ile kullanıcıya sunuyorum:
LOCAL idx, nPort, lfound
ON ERROR Silent_Error()
idx = 0
THISFORM.PgFrame.Pg2.cmbPort_1.ROWSOURCETYPE = 0
FOR nPort = 1 TO 20
WITH THISFORM.oleMsComm
WAIT "Com-Port " + ALLTRIM(STR(nPort)) + " test ediliyor ...." WINDOW AT 20, 40 NOWAIT
gnError = 0
.CommPort = nPort
.PortOpen = TRUE
IF gnError == 0
THISFORM.PgFrame.Pg2.cmbPort_1.ADDITEM(ALLTRIM(STR(nPort)))
IF lfound == FALSE
idx = idx +1
ENDIF
IF nPort == DEFAULT.comport_1
lfound = TRUE
ENDIF
ENDIF
IF .PortOpen
.PortOpen = FALSE
ENDIF
ENDWITH
ENDFOR
WITH THISFORM.PgFrame.Pg2.cmbPort_1
IF idx > 0
.LISTINDEX = idx
.SELECTEDID(idx) = TRUE
ELSE
.LISTINDEX = 1
.SELECTEDID(1) = TRUE
ENDIF
ENDWITH
ON ERROR my_std_error(ERROR(), MESSAGE(), MESSAGE(1), PROGRAM(), LINENO() )
WAIT CLEAR
Bilgisayarımda 3 Com-Port var: COM-1 (anakart), COM-3 ve COM-4 (PCI-kart). İleişim sorunsuz çalışyor.
Sorun "USB -> RS232 2.0 Adaptör" ile yaşıyorum.
Hyperterminal, Device Manager v.s. yeni oluşan com portu algılıyor (ve Hyperterminal ile cihaz ile temasa geçebiliyorum) ama VFP sadece com-1, com-3 ve com-4 'ü görüyor.
Bunun nedeni ne olabilir?
İlginiz için teşekkürler.
Mehmet