StartDeviceNotification

Bu metodu, Com portuna bağlı kart okuyucuya, kart takıldığında ve kart çıkarıldığında, Anadil tarafında haberdar olmak istediğimizde kullanırız. Kart takılınca, ilgili personel kartının Id si okunur ve belirtilen fonksiyon (aşağıdaki örnekte : StartFuncKart) kart id parametresi ile birlikte tetiklenir. Kart okuyucuda durduğu sürece her hangi bir tetikleme gerçekleşmez. Personel kartı okuyucudan çıkardığında, belirtilen Stop Fonksiyonu (örnekte : StopFunc) tetiklenir. Kullanımı

DeviceObject.StartDeviceNotification(
	Service As String   ' AÇIKLAMA : Servis   
	StartFunction As String   ' AÇIKLAMA : Fonksiyon ismi
	StopFunction As String   ' AÇIKLAMA : Fonksiyon ismi  
							)As Boolean

Parametreler Service Tetiklenecek fonksiyonların yer aldığı Servisin ismi. (Bu metodun çağırıldığı servis) As String StartFunction Kart takıldığında tetiklenecek fonksiyonun ismi. (StartFunction) As String StopFunction Kart çıkarıldığında tetiklenecek fonksionun ismi. (StopFunction) As String Geri Dönüş Değeri Geri dönüş değeri TRUE/FALSE. Dikkat Edilecek Hususlar ----- Örnek

Function OpenComPort() As Bool
Dim sCom as String
 
  '+
  '  Kart okuyucunun Registry de USBSER000 entry si ile yer aldığını varsayalım.
  '  USBSER000        Com5        gibi
  ' -                        
  sCom:=GetMachineString("/Hardware/Devicemap/SerialComm/\\Device\\USBSER000")
  outm("\Device\USBSER000 = " & sCom)
  
  if (sCom = "") Then 'Kart Okuyucu Takılı Değil
    outm("Kart Okuyucu Takılı Değil...Lütfen sistem yöneticinize bildiriniz")
    OpenComPort:=False
    return
  EndIf

  ' Com portu için Device nesnesi yaratılıyor
  oDev:=CreateDevice()

  oDev.SetPort(val(Right(sCom,1))) ' COM5 --> 5  
  oDev.SetBaudRate(9600) ' Hız 9600 olarak belirleniyor
  oDev.SetTimeout(500) '0.5 saniye
  outm("Set Timeout 500 mseconds (0.5 saniye)")   

  'Com portundan 20 şer karakter okunması sağlanıyor
  oDev.SetBufferSize(20) 
  outm("Set Buffer Size : 20")   

  '+
  ' Debug mesajlar Internal mesajlar halinde Terminale yazılırlar
  ' SetDebug metodu, yeni bir cihaz ile ilgili okuma, yazma akışını izleyebilmek
  ' ve varsa hatları bulabilmek için fayda sağlar.
  '-
  oDev.SetDebug(True) 
  outm("Set Debug TRUE...")   
  
  oDev.OpenDevice() 
  outm("Device Opened...")   

  bPortOpen:=True

  ' +
  '  Com portuna bağlı kart okuyucuya, kart takıldığında, StartFuncKart fonksiyonunun,
  '  kart çıkarıldığında ise StopFunc fonksiyonunun çağırılması isteniyor
  ' -  
  oDev.StartDeviceNotification("urt_isemri_takibi_dokunmatik", "StartFuncKart", "StopFunc")  
  
  OpenComPort:=True
EndFunction

Function StopReadingComPort()  

    'Okuyucuya kart takıldığında ve çıkarıldığında çalışan tetikleme yapısı durduruluyor
    oDev.StopDeviceNotification()  

    CloseComPort()
    bPortOpen:=False
  EndIf  

EndFunction             

Function CloseComPort() 
  oDev.CloseDevice()     
  outm("Device Closed...")  
EndFunction

Örnek Açıklaması Com portundan veri okundugunda, ilgili Anadil servisi tetiklenir. Kullanım Alanı : Üretim ortamları, dokunmatik veri toplama bilgisayarlarına monte edilmiş kart okuyucuları.

Last updated