【发布时间】:2014-03-06 17:28:12
【问题描述】:
我正在尝试使用 Windows Mobile 6 Professional 为 PDA 制作 TCP 客户端应用程序。 我试图首先在我的笔记本电脑上制作它并且它有效。 “智能设备”的代码完全一样,但它不起作用。
代码如下:
// IP and Port
string IP = "192.168.1.68";
int port = 1000;
// TCP connection
TcpClient connection;
StreamReader TCPreader;
StreamWriter TCPwriter;
//(...)
try
{
connection = new TcpClient(IP, port);
NetworkStream stream = connection.GetStream();
TCPreader = new StreamReader(stream);
TCPwriter = new StreamWriter(stream);
// wait for welcome message
status_label.Text = TCPreader.ReadLine();
}
catch(Exception ex)
{
MessageBox.Show("ERROR: " + ex.Message);
}
“readLine()”方法调用引发异常。我无法收到消息,否则我会收到类似“未安装此异常消息,您必须安装 NETCFv35.messages.en.cab”的信息。我已经安装了那个 .cab,但我得到了同样的信息。
出了什么问题?为什么此代码适用于我的笔记本电脑(WinForms 应用程序/NET3.5)而不适用于 PDA(智能设备/NETCF3.5)?有什么建议吗?
提前致谢!
【问题讨论】:
-
您如何通过 PDA 连接到网络? PDA 可以访问 192.168.1.68 吗?您可以使用wmnettools.codeplex.com 来调试网络问题。
-
这是我的:一台笔记本电脑,带 WiShield 的 Arduino(如果你不知道它是什么,它的硬件带有 TCP 堆栈和运行在其中的 TCP 服务器)和 PDA(HTC Touch与 WM6)。我的笔记本电脑没有问题。我可以“ping” 192.168.1.68 并从中发送/接收消息。使用 PDA 似乎可以连接,但我无法接收/发送数据。出于测试目的禁用防火墙。我会试试你提到的应用程序。
-
在尝试了“网络工具”之后,我得到了以下信息:“请求超时”“请求超时”“请求超时”“错误,NetToolsV2 中发生本机异常。可执行程序”。郁闷... PDA为什么连不上192.168.1.68?即使禁用了防火墙?
标签: c# windows-mobile tcpclient