franksunny的个人技术空间
获得人生中的成功需要的专注与坚持不懈多过天才与机会。 ——C.W. Wendte

本文并非本人原创,文中红色字体为我新加,原文出处http://blog.donews.com/sevenworld/archive/2005/10/17/591911.aspx

 

如何设置S60模拟器的网络参数

 

在调试使用Socket进行数据通讯的Symbian S60程序过程中,需要编写客户端与服务器的数据交互代码,如果S60的模拟器可以直接访问网络中的服务器程序,调试就会非常方便。S60的模拟器提供了这些功能,不过需要对网络参数进行一些设置,下面将讨论这一问题。

首先是网络参数的设置,在Symbian安装目录的..\Epoc32\tools目录下有一个网络参数设置程序network_config.bat,对于不同的开发包,这个名字可能会有一些不同(可以选择开始菜单下SDK目录tools下的Ethernet Support Configuration)。执行该程序,将显示参数设置界面。其实参数的设置和对局域网中的PC设置一样,你就把它当成是在设置PC的网络配置就可以了。分配一个没有使用的IP注意绝对不能与本机IP相同),填写好子网掩码,设置好局域网的网关。唯一的不同是要选择所使用的网卡。当你点OK关闭该设置对话框的时候(或着点那个Adapters按钮),会显示一个命令行界面,列出了当前机器上可以使用的网卡的信息,你需要输入一个数字选择一个网卡,注意,应该选择你的PC所使用的那个真实的网卡,也就是标识你机器在局域网内IP地址的那个网卡。

按照官方文档来说,这样就可以,但实际上不是所有的机器都可以,我没有测试过,不知道别人的机器如何,反正我使用的机器不可以。后来我在一本书里看到,还需要运行另外一个程序,才可以达到我们的目的。这个程序与上面的设置程序在同一个目录下,叫做npacketadmin.exe。执行它,会显示一个程序,并跳出一个设置对话框,首先在下拉列表框里选择你刚才选定的那个网卡,然后点击下面的Start按钮,这样就可以了。这时你就可以使用模拟器调试你的Symbian S60通讯程序了。(我实际测试中发现不用启动npacketadmin.exe也是可以的

测试是否连通的方法是,执行模拟器中的网络应用程序,然后输入一个网址,比如www.sina.com.cn,如果设置正确,将显示该页面,注意也许是乱码,不过不要紧,因为我们只想知道网络是否已经可用了。(强烈建议使用非中文网站做测试,比如www.google.com

 

如果以上的过程中,不启动npacketadmin.exe就不能连接的用户,必须注意下面几个问题:

1.在调试期间可以关闭npacketadmin.exe的那个设置对话框,但是不能关闭该程序。如果关闭了,网络将不通。

2.如果不小心关闭了该程序,需要重新启动,并重新做上面的第二步的操作。

3.应该在启动模拟器之前就启动该程序,不然模拟器可能会异常退出。

 

 

本人刚开始调试时,犯了以下一些问题:

首先用msconfig工具将S60Ethernet Packet Service这个服务停掉了,后来每一次模拟器试图用Socket连接时都弹出“Error1058 无法启动服务……”的报错。该错误在npacketadmin.exe启动时也会出现。

其次没有注意IP的问题,用跟本机同一个IP,结果怎么连都连不上,后来改成我同事的,害得他一个下午都因为网络上有同名IP而半天没得上网。



另注:最近更换环境时发现,假如主机是通过自动获取ip就可以上网的话,不知道模拟器的ip不设,读者能否实现,我本人试过老是出现“网关无响应”提示,所以我觉得原则上还是需要设置ip的,当然前提是主机设了固定IP也能上网,然后模拟器设置一个不同于主机的ip地址 modify 2008.03.17
posted on 2007-09-25 16:21 frank.sunny 阅读(2886) 评论(2)  编辑 收藏 引用 所属分类: symbian 开发

FeedBack:
# re: 如何设置S60模拟器的网络参数
2007-09-25 19:40 | livesite
Orz,原来你也在这里混  回复  更多评论
  
# re: 如何设置S60模拟器的网络参数
2007-10-16 10:24 | 赵君胜
正式我所需要的!谢谢!  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理



常用链接

留言簿(13)

随笔分类

个人其它博客

基础知识链接

最新评论

阅读排行榜

评论排行榜