我在移动设备(Pocket PC 2003)中开发了一个程序来访问Web服务,Web服务安装在带有IIS的Windows XP SP2 PC上,PC的IP为192.168.5.2。
设备从无线网络获取IP 192.168.5.118并且程序正常工作,它从Web服务调用该方法并执行所需的操作。该计划将用于各种建筑物。
现在我遇到了这个问题,当我尝试在与网络连接的另一个建筑物(距离大约100 mts。或200 mts。)中测试它时,程序无法连接到web服务,此时设备从接入点获取IP 192.168.10.25,它访问我之前说过的相同的XP机器(192.168.5.2)。我制作了一个移动aspx页面,以验证我是否可以通过网络访问网络服务器并将其加载到设备中,我甚至做了一个winform,可以从该建筑物的PC中访问同一个Web服务,也可以在那里工作,所以我不知道了解发生了什么。我还尝试ping那个192.168.5.2 PC,它还能活着。
在那次失败之后,我回到了之前测试程序的原始位置,它发生了正常工作。
这里我唯一不同的是,IP中的第三个数字是10而不是5,另一个观察是我无法ping通移动设备。我感到困惑,我不知道这里发生了什么?可能是什么问题?
这就是我调用Web服务的方式;
//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>
有没有人知道发生了什么?
答案 0 :(得分:1)
这是一个网络问题,我们配置了代理服务器,这就是问题所在,我需要了解有关网络的更多信息。
答案 1 :(得分:0)
不是这方面的专家,但看起来地址的前三部分被掩盖了。是否有可能为移动设备提供以下网络掩码:
255.255.255.0
要超出前3个部分的范围,您需要使用蒙版:
255.255.0.0
这可能是过于简单化或完全错误,但这是我对这个问题的直觉反应。
答案 2 :(得分:0)
这看起来像一个网络问题,除非在.Net CF中有一个奇怪的错误,它不允许你在某些情况下遍历子网(我没有通过谷歌搜索找到这样的事情的证据)。
您能从网络/ IT团队获得任何支持吗?另外,你从不同的子网尝试过吗?即与XP机器(192.168.5.x)不同,与目前尚未运行的机器(192.168.10。)不同。
@Shaun Austin - 这无法解释为什么他们可以从不同的子网上访问XP机器上的常规网页。