📄 form1.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
[DllImport("kernel32.dll")]
static extern void Sleep(UInt32 ms);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_SearchAll();
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_Search([MarshalAs(UnmanagedType.LPStr)] String szip);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_GetSearchDev( ref byte szip,
ref byte szver,ref byte szmac,
ref byte pdevtype, ref byte pipmode, ref int ptcpport);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_GetDevInfoUDPbyIP(
[MarshalAs(UnmanagedType.LPStr)] string szip,
byte devtype);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_GetDevConfigUDP([MarshalAs(UnmanagedType.LPStr)] string szname,
ref byte szval);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_ResetModifyConfigUDP();
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_SetModifyConfigUDP(
[MarshalAs(UnmanagedType.LPStr)] string szname,
[MarshalAs(UnmanagedType.LPStr)] string szval);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_ModifyDevUDPbyIP(
[MarshalAs(UnmanagedType.LPStr)] string szip,
[MarshalAs(UnmanagedType.LPStr)] string szpwd,
byte devtype);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_LoginTCP(byte devtype,
[MarshalAs(UnmanagedType.LPStr)] string szip,
int port,
[MarshalAs(UnmanagedType.LPStr)] string szpwd);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_GetDevConfigTCP(
[MarshalAs(UnmanagedType.LPStr)] string szname, ref byte szval);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_ModifyDevConfigTCP(
[MarshalAs(UnmanagedType.LPStr)] string szname,
[MarshalAs(UnmanagedType.LPStr)] string szval);
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_ResetDevTCP();
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_ExitTCP();
[DllImport("ZNetAdv.dll")]
static extern UInt32 ZN_SendCmd(byte devtype,
[MarshalAs(UnmanagedType.LPStr)] string szip,
int port,
[MarshalAs(UnmanagedType.LPStr)] string szname,
[MarshalAs(UnmanagedType.LPStr)] string szval,
byte budp);
public Form1()
{
InitializeComponent();
}
public void ClearDevices()
{
listView_Dev.Items.Clear();
}
public string GetDevType(byte devtype)
{
Byte []devarr=new Byte[20];
string []namearr=new string[20];
devarr[0] = 1;
devarr[1] = 2;
devarr[2] = 3;
devarr[3] = 4;
devarr[4] = 5;
devarr[5] = 6;
devarr[6] = 7;
devarr[7] = 8;
devarr[8] = 11;
devarr[9] = 12;
devarr[10] = 13;
devarr[11] = 48;
namearr[0] = "ZNE-100";
namearr[1] = "ZNE-100T";
namearr[2] = "ZNE-10";
namearr[3] = "ZNE-200T";
namearr[4] = "NETCOM-10";
namearr[5] = "ZNE-200";
namearr[6] = "ZNE-10T";
namearr[7] = "ZNE-100TI";
namearr[8] = "CANET-E";
namearr[9] = "CANET-100";
namearr[10] = "CANET-200";
namearr[11] = "NETCOM-400";
int sz=12,i=0;
string str1;
for(i=0;i<sz;i++)
{
if(devarr[i]==devtype)
{
str1=System.Convert.ToString(devtype)+"("+
namearr[i]+")";
return str1;
}
}
str1=System.Convert.ToString(devtype);
return str1;
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
ClearDevices();
ZN_SearchAll();
int times=0;
byte[] szip = new byte[20];
byte[] szver = new byte[20];
byte[] szmac = new byte[30];
byte devtype=0,ipmode=0;
int tcpport=0;
for(;times<200;times++)
{
while (ZN_GetSearchDev(ref szip[0], ref szver[0], ref szmac[0], ref devtype, ref ipmode, ref tcpport) == 1)
{
ListViewItem item = listView_Dev.Items.Add(
System.Text.Encoding.ASCII.GetString(szip));
item.SubItems.Add(GetDevType(devtype));
item.SubItems.Add(
System.Text.Encoding.ASCII.GetString(szmac));
if (devtype >= 48)
item.SubItems.Add(System.Convert.ToString(tcpport));
else
item.SubItems.Add("");
}
Sleep(10);
}
}
public int TryGetSelDev()
{
if (listView_Dev.SelectedItems.Count > 0)
{
return listView_Dev.SelectedItems[0].Index;
}
return -1;
}
public int GetInfo_MultiCOM(byte devtype, string szip, int port)
{
Form2 dlg=new Form2();
dlg.ShowDialog();
if(dlg.isOK()!=1)
return 0;
string szpwd="";
szpwd=dlg.GetPwd();
if(ZN_LoginTCP(devtype,szip,port,szpwd)!=1)
return 0;
uint res=1;
byte []szval=new byte[100];
res = ZN_GetDevConfigTCP("NAME", ref szval[0]);
if(res != 1)
goto ext;
textBox_Name.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_OP", ref szval[0]);
if(res!=1)
goto ext;
textBox_Worktype.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_PORT", ref szval[0]);
if(res!=1)
goto ext;
textBox_Workport.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_BAUD", ref szval[0]);
if(res!=1)
goto ext;
textBox_Baud.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_DATAB", ref szval[0]);
if(res!=1)
goto ext;
textBox_DataB.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_STOPB", ref szval[0]);
if(res!=1)
goto ext;
textBox_StopB.Text = System.Text.Encoding.ASCII.GetString(szval);
res = ZN_GetDevConfigTCP("C1_PARITY", ref szval[0]);
if(res!=1)
goto ext;
textBox_Parity.Text = System.Text.Encoding.ASCII.GetString(szval);
ext:
ZN_ExitTCP();
return (int)res;
}
public int GetInfo_SingleCOM(byte devtype, string szip)
{
uint res = ZN_GetDevInfoUDPbyIP(szip, devtype);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -