private bool ReadSysInfo() { int configSize = 0; Cursor.Current = Cursors.WaitCursor; if (m_DeviceType == BSSDK.BS_DEVICE_BEPLUS || m_DeviceType == BSSDK.BS_DEVICE_XPASS) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBEPlus)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BEPLUS_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBEPlus = (BSSDK.BESysInfoData)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BESysInfoData)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBEPlus.ID); MAC.Text = ""; int i = 0; for (i = 0; i < 5; i++) { MAC.Text += m_SysInfoBEPlus.macAddr[i].ToString("X2") + ":"; } MAC.Text += m_SysInfoBEPlus.macAddr[i].ToString("X2"); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBEPlus.firmwareVer); } else if (m_DeviceType == BSSDK.BS_DEVICE_BIOLITE) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBLN)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BLN_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBLN = (BSSDK.BESysInfoDataBLN)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BESysInfoDataBLN)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBLN.ID); MAC.Text = ""; int i = 0; for (i = 0; i < 5; i++) { MAC.Text += m_SysInfoBLN.macAddr[i].ToString("X2") + ":"; } MAC.Text += m_SysInfoBLN.macAddr[i].ToString("X2"); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBLN.firmwareVer); } else if (m_DeviceType == BSSDK.BS_DEVICE_BIOSTATION) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBST = (BSSDK.BSSysInfoConfig)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BSSysInfoConfig)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBST.ID); MAC.Text = Encoding.ASCII.GetString(m_SysInfoBST.macAddr); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBST.firmwareVer); } else if (m_DeviceType == BSSDK.BS_DEVICE_DSTATION) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBST = (BSSDK.BSSysInfoConfig)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BSSysInfoConfig)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBST.ID); MAC.Text = Encoding.ASCII.GetString(m_SysInfoBST.macAddr); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBST.firmwareVer); } else if (m_DeviceType == BSSDK.BS_DEVICE_XSTATION) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBST = (BSSDK.BSSysInfoConfig)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BSSysInfoConfig)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBST.ID); MAC.Text = Encoding.ASCII.GetString(m_SysInfoBST.macAddr); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBST.firmwareVer); } else if (m_DeviceType == BSSDK.BS_DEVICE_BIOSTATION2) { IntPtr sysInfo = Marshal.AllocHGlobal(Marshal.SizeOf(m_SysInfoBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_SYS_INFO, ref configSize, sysInfo); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the sys info", "Error"); Marshal.FreeHGlobal(sysInfo); return(false); } m_SysInfoBST = (BSSDK.BSSysInfoConfig)Marshal.PtrToStructure(sysInfo, typeof(BSSDK.BSSysInfoConfig)); Marshal.FreeHGlobal(sysInfo); deviceID.Text = String.Format("{0}", m_SysInfoBST.ID); MAC.Text = Encoding.ASCII.GetString(m_SysInfoBST.macAddr); FWVersion.Text = Encoding.ASCII.GetString(m_SysInfoBST.firmwareVer); } return(true); }
private bool ReadConfig() { int configSize = 0; Cursor.Current = Cursors.WaitCursor; if (m_DeviceType == BSSDK.BS_DEVICE_BEPLUS || m_DeviceType == BSSDK.BS_DEVICE_XPASS) { IntPtr config = Marshal.AllocHGlobal(Marshal.SizeOf(m_ConfigBEPlus)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BEPLUS_CONFIG, ref configSize, config); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the configuration", "Error"); Marshal.FreeHGlobal(config); return(false); } m_ConfigBEPlus = (BSSDK.BEConfigData)Marshal.PtrToStructure(config, typeof(BSSDK.BEConfigData)); Marshal.FreeHGlobal(config); DHCP.Checked = m_ConfigBEPlus.useDHCP; useServer.Checked = m_ConfigBEPlus.useServer; synchTime.Checked = m_ConfigBEPlus.synchTime; IPAddress addr = new IPAddress(m_ConfigBEPlus.ipAddr); ipAddr.Text = addr.ToString(); addr.Address = m_ConfigBEPlus.gateway; gateway.Text = addr.ToString(); addr.Address = m_ConfigBEPlus.subnetMask; subnetMask.Text = addr.ToString(); addr.Address = m_ConfigBEPlus.serverIpAddr; serverIP.Text = addr.ToString(); port.Text = m_ConfigBEPlus.port.ToString(); if (DHCP.Checked) { ipAddr.Enabled = false; gateway.Enabled = false; subnetMask.Enabled = false; } else { ipAddr.Enabled = true; gateway.Enabled = true; subnetMask.Enabled = true; } } else if (m_DeviceType == BSSDK.BS_DEVICE_BIOLITE) { IntPtr config = Marshal.AllocHGlobal(Marshal.SizeOf(m_ConfigBLN)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BLN_CONFIG, ref configSize, config); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the configuration", "Error"); Marshal.FreeHGlobal(config); return(false); } m_ConfigBLN = (BSSDK.BEConfigDataBLN)Marshal.PtrToStructure(config, typeof(BSSDK.BEConfigDataBLN)); Marshal.FreeHGlobal(config); DHCP.Checked = m_ConfigBLN.useDHCP; useServer.Checked = m_ConfigBLN.useServer; synchTime.Checked = m_ConfigBLN.synchTime; IPAddress addr = new IPAddress(m_ConfigBLN.ipAddr); ipAddr.Text = addr.ToString(); addr.Address = m_ConfigBLN.gateway; gateway.Text = addr.ToString(); addr.Address = m_ConfigBLN.subnetMask; subnetMask.Text = addr.ToString(); addr.Address = m_ConfigBLN.serverIpAddr; serverIP.Text = addr.ToString(); port.Text = m_ConfigBLN.port.ToString(); if (DHCP.Checked) { ipAddr.Enabled = false; gateway.Enabled = false; subnetMask.Enabled = false; } else { ipAddr.Enabled = true; gateway.Enabled = true; subnetMask.Enabled = true; } } else if (m_DeviceType == BSSDK.BS_DEVICE_BIOSTATION) { IntPtr config = Marshal.AllocHGlobal(Marshal.SizeOf(m_ConfigBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_TCPIP, ref configSize, config); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the configuration", "Error"); Marshal.FreeHGlobal(config); return(false); } m_ConfigBST = (BSSDK.BSIPConfig)Marshal.PtrToStructure(config, typeof(BSSDK.BSIPConfig)); Marshal.FreeHGlobal(config); DHCP.Checked = m_ConfigBST.useDHCP; useServer.Checked = m_ConfigBST.useServer; synchTime.Checked = m_ConfigBST.syncTimeWithServer; ipAddr.Text = Encoding.ASCII.GetString(m_ConfigBST.ipAddr); gateway.Text = Encoding.ASCII.GetString(m_ConfigBST.gateway); subnetMask.Text = Encoding.ASCII.GetString(m_ConfigBST.subnetMask); serverIP.Text = Encoding.ASCII.GetString(m_ConfigBST.serverIP); if (m_ConfigBST.useServer) { port.Text = m_ConfigBST.serverPort.ToString(); } else { port.Text = m_ConfigBST.port.ToString(); } if (DHCP.Checked) { ipAddr.Enabled = false; gateway.Enabled = false; subnetMask.Enabled = false; } else { ipAddr.Enabled = true; gateway.Enabled = true; subnetMask.Enabled = true; } } else if (m_DeviceType == BSSDK.BS_DEVICE_DSTATION) { IntPtr config = Marshal.AllocHGlobal(Marshal.SizeOf(m_ConfigBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_TCPIP, ref configSize, config); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the configuration", "Error"); Marshal.FreeHGlobal(config); return(false); } m_ConfigBST = (BSSDK.BSIPConfig)Marshal.PtrToStructure(config, typeof(BSSDK.BSIPConfig)); Marshal.FreeHGlobal(config); DHCP.Checked = m_ConfigBST.useDHCP; useServer.Checked = m_ConfigBST.useServer; synchTime.Checked = m_ConfigBST.syncTimeWithServer; ipAddr.Text = Encoding.ASCII.GetString(m_ConfigBST.ipAddr); gateway.Text = Encoding.ASCII.GetString(m_ConfigBST.gateway); subnetMask.Text = Encoding.ASCII.GetString(m_ConfigBST.subnetMask); serverIP.Text = Encoding.ASCII.GetString(m_ConfigBST.serverIP); if (m_ConfigBST.useServer) { port.Text = m_ConfigBST.serverPort.ToString(); } else { port.Text = m_ConfigBST.port.ToString(); } if (DHCP.Checked) { ipAddr.Enabled = false; gateway.Enabled = false; subnetMask.Enabled = false; } else { ipAddr.Enabled = true; gateway.Enabled = true; subnetMask.Enabled = true; } } else if (m_DeviceType == BSSDK.BS_DEVICE_XSTATION || m_DeviceType == BSSDK.BS_DEVICE_BIOSTATION2) { IntPtr config = Marshal.AllocHGlobal(Marshal.SizeOf(m_ConfigBST)); int result = BSSDK.BS_ReadConfigUDP(m_Handle, m_DeviceAddr, m_DeviceID, BSSDK.BS_CONFIG_TCPIP, ref configSize, config); Cursor.Current = Cursors.Default; if (result != BSSDK.BS_SUCCESS) { MessageBox.Show("Cannot read the configuration", "Error"); Marshal.FreeHGlobal(config); return(false); } m_ConfigBST = (BSSDK.BSIPConfig)Marshal.PtrToStructure(config, typeof(BSSDK.BSIPConfig)); Marshal.FreeHGlobal(config); DHCP.Checked = m_ConfigBST.useDHCP; useServer.Checked = m_ConfigBST.useServer; synchTime.Checked = m_ConfigBST.syncTimeWithServer; ipAddr.Text = Encoding.ASCII.GetString(m_ConfigBST.ipAddr); gateway.Text = Encoding.ASCII.GetString(m_ConfigBST.gateway); subnetMask.Text = Encoding.ASCII.GetString(m_ConfigBST.subnetMask); serverIP.Text = Encoding.ASCII.GetString(m_ConfigBST.serverIP); if (m_ConfigBST.useServer) { port.Text = m_ConfigBST.serverPort.ToString(); } else { port.Text = m_ConfigBST.port.ToString(); } if (DHCP.Checked) { ipAddr.Enabled = false; gateway.Enabled = false; subnetMask.Enabled = false; } else { ipAddr.Enabled = true; gateway.Enabled = true; subnetMask.Enabled = true; } } return(true); }