学习资料:
Symbian C++ Programming Tutorial
SDK Help -> Example Applications
C++的基础弱,学起来难啊。
看到题目,你可能会觉得多此一举,直接用可用网卡的本地连接不就行了,还费功夫建网桥(Network Bridge) 干嘛?
呵呵,这是因为我安装S60 SKD的机器是自己的Notebook(Thinkpad T43),只有无线网络可用。通过network_config.bat和npacketadmin.exe这两个工具(都在%EPOCROOT%/Epoc32/tools目录下)配置使用无线网卡(Intel(R) PRO/Wireless 2200BG),会报错,说是网卡不支持promiscuous混杂模式。(当然,用有线网卡是没有问题的,可我没有多余的网线了)。这篇文章的作者也遇到了同样的问题。
Google了好半天,没找到什么办法,也许是关键词不对。但用promiscuous这个关键词搜索时发现了这篇e文Blog文章 Windows XP Network Bridge feature and Wireless NIC's。对啊,既然无线网卡不支持promiscuous mode,可以试试桥接闲置的有线网卡,再让S60 SDK使用新的网桥连接。按照它的描述,建网桥,并启用无线网卡的 ForceCompatibilityMode。然后重新配置SDK的网络连接就可以使用了。
很不习惯Emulator的默认skin,正好在搜怎么配置Emulator的网络时顺便看到了更好skin的方法。
从NewLC上找到了下载skin的地方,下载了6600和N-Gage这两个skin。
按照下载页面上的安装说明:先备份已有的epoc.ini,这个文件在%EPOCROOT%/Epoc32/Data目录下 (我的机器上是C:/Symbian/8.1a/S60_2nd_FP3/Epoc32/Data),然后把zip包里的文件解压到这个目录,覆盖epoc.ini。
启动Emulator,skin果然变化了。但有了新问题,需要重新设定Emulator的一些设置(比如内存使用),保存、重启Emulator后会发现又变回默认的skin。
打开备份的epoc.ini,发现它的内容是这样的:
configuration epoc_176x208.ini
configuration epoc_240x320.ini
configuration epoc_352x416.ini
原来具体的配置都在这三个不同的ini文件中,从文件名上猜测是为不同Resolution准备的(我的设置里用的是176x208)。何不试试覆盖epoc_176x208.ini这个文件?
备份epoc_176x208.ini以后,用6600的epoc.ini里的内容覆盖了这个文件,再启动Emulator并进行配置,这次就可以了。下面是效果(注意到Python没有)。
不知还有没有更方便地更换skin的方法,不用重启最好,从epoc的命令行指定也不错。
awk -F : -v user="$u" '{if ($1==user) print $6}' /etc/passwd
文档 Documentation
http://developer.mozilla.org/en/docs/Extensions
XUL Programmer's Reference Manual
http://www.mozilla.org/xpfe/xulref/Mozilla XUL and Script Reference
http://www.ar-ent.net/dar/arlib32/out/html/man/xul/elemref/mxdref.html
知识库 Knowledge Base
MozillaZine Knowledge Base
http://kb.mozillazine.org/Main_Page
论坛 Forums
MozillaZine Forum
http://forums.mozillazine.org/