Пример #1
0
        public static int ZR_FindReader([In][MarshalAs(UnmanagedType.LPArray)] ZP_PORT_ADDR[] pPorts, int nPCount,
                                        [MarshalAs(UnmanagedType.LPStruct)] ref ZR_RD_INFO pInfo, ref ZP_PORT_INFO pPort,
                                        [In][MarshalAs(UnmanagedType.LPStruct)] ZP_WAIT_SETTINGS pWS = null, UInt32 fUpdate = ZPIntf.ZP_SF_UPDATE)
        {
            int nRes, nSize;

            nSize = Marshal.SizeOf(pInfo);
            IntPtr pnt = Marshal.AllocHGlobal(nSize);

            try {
                nRes  = ZPIntf.ZP_FindSerialDevice(0x19, pPorts, nPCount, pnt, nSize, ref pPort, pWS, fUpdate);
                pInfo = (ZR_RD_INFO)Marshal.PtrToStructure(pnt, typeof(ZR_RD_INFO));
            } finally {
                Marshal.FreeHGlobal(pnt);
            }
            return(nRes);
        }
Пример #2
0
 public static int ZR_ProcessMessages(IntPtr hHandle, ZP_NOTIFYPROC pEnumProc, IntPtr pUserData)
 {
     return(ZPIntf.ZP_ProcessMessages(hHandle, pEnumProc, pUserData));
 }
Пример #3
0
 public static int ZR_FindNotification(ref IntPtr pHandle, ref ZP_NOTIFY_SETTINGS pSettings)
 {
     pSettings.nSDevTypes |= 0x19;
     return(ZPIntf.ZP_FindNotification(ref pHandle, ref pSettings));
 }
Пример #4
0
 public static int ZR_EnumSerialPorts(ZP_ENUMPORTSPROC pEnumProc, IntPtr pUserData)
 {
     return(ZPIntf.ZP_EnumSerialPorts(0x19, pEnumProc, pUserData));
 }