我在下面的Windows应用程序.cs文件中使用下面的dll调用..
SBXPCDLL.cs文件:
[DllImport("SBXPCDLL.dll", CallingConvention = CallingConvention.Winapi)]
static extern byte _ConnectTcpip(Int32 dwMachineNumber, ref IntPtr lpszIPAddress, Int32 dwPortNumber, Int32 dwPassWord);
public static bool ConnectTcpip(Int32 dwMachineNumber, string lpszIPAddress, Int32 dwPortNumber, Int32 dwPassWord)
{
if (lpszIPAddress == null)
return false;
IntPtr string_in = Marshal.StringToBSTR(lpszIPAddress);
try
{
byte ret = _ConnectTcpip(dwMachineNumber, ref string_in, dwPortNumber, dwPassWord);
return ret > 0;
}
catch (Exception)
{
return false;
}
finally
{
Marshal.FreeBSTR(string_in);
}
}
窗口文件:
if (SBXPCDLL.ConnectTcpip(Program.gMachineNumber, lpszIPAddress, Convert.ToInt32(txtPortNo.Text), Convert.ToInt32(txtPassword.Text)))
{
//Connected
}
我在asp.net中的web应用程序中使用的相同格式..它没有连接,但有时只连接一次......任何人都可以帮助我们..