Esempio n. 1
0
        public static string ReadDeviceUID(int devhandle)
        {
            IntPtr errmsg = new IntPtr();

            errmsg = Marshal.AllocHGlobal(0x400);
            string str = null;

            lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct data = new lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct();
            DevInstanceMgr.SEQInfo info = new DevInstanceMgr.SEQInfo();
            int    seq  = lnk_sdk_interface.LNX_SDK_Interface_X86.read_device_info(nethandle, devhandle, 300, 3, m_send_read_device_info_callback_def, errmsg);
            string str2 = Marshal.PtrToStringAnsi(errmsg);

            Marshal.FreeHGlobal(errmsg);
            if (seq == -1)
            {
                return(str);
            }
            int num2 = 10;

            while (num2-- > 0)
            {
                info = DevInstanceMgr.SEQFindInfo(seq);
                if (info != null)
                {
                    data = (lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct)info.Data;
                    break;
                }
                Thread.Sleep(100);
            }
            return(new string(data.uid));
        }
Esempio n. 2
0
        public static string[] ReadDeviceInfo(int devhandle)
        {
            IntPtr errmsg = new IntPtr();

            errmsg = Marshal.AllocHGlobal(0x400);
            List <string> list = new List <string>();

            string[] strArray = null;
            lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct data = new lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct();
            DevInstanceMgr.SEQInfo info = new DevInstanceMgr.SEQInfo();
            int    seq = lnk_sdk_interface.LNX_SDK_Interface_X86.read_device_info(nethandle, devhandle, 300, 3, m_send_read_device_info_callback_def, errmsg);
            string str = Marshal.PtrToStringAnsi(errmsg);

            Marshal.FreeHGlobal(errmsg);
            if (seq == -1)
            {
                return(strArray);
            }
            int num2 = 10;

            while (num2-- > 0)
            {
                info = DevInstanceMgr.SEQFindInfo(seq);
                if (info != null)
                {
                    data = (lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct)info.Data;
                    break;
                }
                Thread.Sleep(100);
            }
            list.Add(new string(data.hardname));
            list.Add(new string(data.softver));
            list.Add(new string(data.macaddr));
            return(list.ToArray());
        }
Esempio n. 3
0
        private static int send_read_device_info_callback_defPro(int nethandle, int devhandle, int sendid, int sendstatus, IntPtr errmsg, IntPtr devinfo)
        {
            string str = Marshal.PtrToStringAnsi(errmsg);

            if (sendstatus != -10)
            {
                lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct struct2 = (lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct)Marshal.PtrToStructure(devinfo, typeof(lnk_sdk_interface.LNX_SDK_Interface_X86.DeviceInfoStruct));
                DevInstanceMgr.SEQInfo sEQInfo = new DevInstanceMgr.SEQInfo {
                    SEQ  = sendid,
                    Data = struct2
                };
                DevInstanceMgr.SEQAdd(sEQInfo);
            }
            return(0);
        }