I have two LI4278 barcode scanners. I want each scanner to beep when one of it reads a barcode that is not in the database. To do this I use BarcodeEvent of the SDK. But the event gives me the id of the cradles not the scanner. Becouse of this i can not beep the scanner. How can i get the id of scanner?
Here is my code;
private void Form1_Load(object sender, EventArgs e)
{
cCoreScannerClass = new CCoreScannerClass();
//Call Open API
short[] scannerTypes = new short[1];//Scanner Types you are interested in
scannerTypes[0] = 1; // 1 for all scanner types
short numberOfScannerTypes = 1; // Size of the scannerTypes array
int status; // Extended API return code
cCoreScannerClass.Open(0, scannerTypes, numberOfScannerTypes, out status);
// Subscribe for barcode events in cCoreScannerClass
cCoreScannerClass.BarcodeEvent += new _ICoreScannerEvents_BarcodeEventEventHandler(OnBarcodeEvent);
// Let's subscribe for events
int opcode = 1001; // Method for Subscribe events
string outXML; // XML Output
string inXML = "<inArgs>" +
"<cmdArgs>" +
"<arg-int>1</arg-int>" + // Number of events you want to subscribe
"<arg-int>1</arg-int>" + // Comma separated event IDs
"</cmdArgs>" +
"</inArgs>";
cCoreScannerClass.ExecCommand(opcode, ref inXML, out outXML, out status);
short numberOfScanners = 2;
int[] sfScannerIDList = new int[255];
cCoreScannerClass.GetScanners(out numberOfScanners, sfScannerIDList, out outXML, out status);
}
void OnBarcodeEvent(short eventType, ref string pscanData)
{
string barcode = pscanData;
}
Aucun commentaire:
Enregistrer un commentaire