1

我在移动设备(Pocket PC 2003)中开发了一个程序来访问 Web 服务,该 Web 服务安装在带有 IIS 的 Windows XP SP2 PC 上,PC 的 IP 为 192.168.5.2。

设备从无线网络获取 IP 192.168.5.118 并且程序运行正常,它从 Web 服务调用方法并执行所需的操作。该程序将用于各种建筑物。

现在我遇到了这个问题,事实证明,当我尝试在与网络连接的另一座建筑物(距离大约 100 米或 200 米)中测试它时,程序无法连接到 web 服务,此时设备从IP 192.168.10.25 的访问点,它访问我之前提到的同一台 XP 机器(192.168.5.2)。我制作了一个移动 aspx 页面,以验证我可以通过网络访问 Web 服务器并将其加载到设备中,我什至制作了一个 winform,可以从该建筑物访问 PC 中的相同 Web 服务,并且也可以在那里工作,所以我没有不明白发生了什么。我还尝试 ping 那台 192.168.5.2 PC 并且它响应活跃。

在那次失败之后,我回到了我之前测试程序的原始位置,它恰好可以正常工作。

我在这里唯一看起来不同的是 IP 中的第三个数字是 10 而不是 5,另一个观察是我无法 ping 到移动设备。我感到很困惑,我不知道这里发生了什么?可能是什么问题呢?

这就是我调用网络服务的方式;

//Connect to webservice
svc = new TheWebService(); 
svc.Credentials = new System.Net.NetworkCredential(Settings.UserName, Settings.Password);
svc.AllowAutoRedirect = false;
svc.UserAgent = Settings.UserAgent;
svc.PreAuthenticate = true;
svc.Url = Settings.Url;
svc.Timeout = System.Threading.Timeout.Infinite;

//Send information to webservice
svc.ExecuteMethod(info);

移动设备中 app.config 的内容是;

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="UserName" value="administrator" />
    <add key="Password" value="************" />
    <add key="UserAgent" value="My User Agent" />
    <add key="Url" value="http://192.168.5.2/WebServices/TWUD.asmx" />
  </appSettings>
</configuration>

有谁知道发生了什么?

4

3 回答 3

1

这是网络问题,我们配置了代理服务器,这就是问题所在,我需要了解有关网络的更多信息。

于 2008-09-12T04:18:24.583 回答
0

不是这方面的专家,但看起来地址的前 3 部分被掩盖了。移动设备是否有可能被赋予以下网络掩码:

255.255.255.0

要超出前 3 个部分的范围,您需要将掩码设为:

255.255.0.0

这可能过于简单化或完全错误,但这是我对这个问题的直觉反应。

于 2008-08-28T06:34:59.607 回答
0

这看起来像是一个网络问题,除非 .Net CF 中有一个奇怪的错误,它不允许您在某些情况下遍历子网(我无法从谷歌搜索中找到这样的证据)。

您能从网络/IT 团队获得任何支持吗?另外,您是否从不同的子网尝试过?即与 XP 机器 (192.168.5.x) 不同,也与目前尚未运行的机器 (192.168.10.) 不同。

@Shaun Austin - 这无法解释为什么他们可以从不同的子网访问 XP 机器上的常规网页。

于 2008-08-28T06:43:41.363 回答