我的系统:XP SP3
SDK:3rd mr
JAVA:1.5.0_08
Perl:5.8.6.811
程序可以编译过去,但在启动模拟器的过程出现几个问题:
1.模拟器无法启动。
2.模拟器可以启动,但启动后会自动退出。
3.模拟可以启动,但模拟器屏幕桌面区域没任何图标。
4.模拟器可以启动,但在旁边出现个ESHELL的要输入命令行的窗口,试着输了几个命令,也没什么反映。
以上启动模拟器的方法用命令行EPOC,或者从开始程序SDK中启动都一样。
SDK->EPOC32->DATA目录下的epoc.ini文件中内容如下,本人没改动
configuration epoc_352x416.ini
configuration epoc_416x352.ini
configuration epoc_176x208.ini
configuration epoc_208x176.ini
configuration epoc_240x320.ini
configuration epoc_320x240.ini
# NOTICE! Below lines are read only for the first resolution (ini file) above.
PlatSecDiagnostics ON
PlatSecEnforceSysBin ON
PlatSecProcessIsolation ON
PlatSecEnforcement OFF
PlatSecDisabledCaps NONE
LogToFile 1
LogToDebugger 1
JUSTINTIME debug
_EPOC_DRIVE_D \epoc32\winscw\d
_EPOC_LocDrv_1 E:
MegabytesOfFreeMemory 32
MultiMediaCardSize=16000
运行模拟器不启动的情况下,我看EPOCWIND.OUT文件中的内容如下
PlatSecEnforcement OFF
PlatSecDiagnostics ON
PlatSecProcessIsolation ON
PlatSecEnforceSysBin ON
PlatSecDisabledCaps NONE
0.000 Thread 0096d874 created @ 0x96d874 - Win32 Thread ID 0x6c4
0.000 Thread EKern.exe::Supervisor created @ 0xa633fc - Win32 Thread ID 0x674
0.000 Thread EKern.exe:fcThread0 created @ 0xa63ea4 - Win32 Thread ID 0xd10
0.000 Thread EKern.exe:fcThread1 created @ 0xa642b8 - Win32 Thread ID 0x150
0.000 Thread EKern.exe::TimerThread created @ 0xa64b6c - Win32 Thread ID 0x5c8
0.150 Thread EKern.exe::FlashThread created @ 0xa69634 - Win32 Thread ID 0xb34
0.155 Thread EKern.exe::MultiMediaCard0 created @ 0xa6a508 - Win32 Thread ID 0x400
0.155 Thread EKern.exe::NandThread created @ 0xa6d1bc - Win32 Thread ID 0xde4
0.160 Thread EFile.exe::Main created @ 0xa6df50 - Win32 Thread ID 0x8ac
0.160 Thread EFile.exe::Local-00a75344 created @ 0xa755fc - Win32 Thread ID 0xc48
0.160 Thread EFile.exe::LoaderThread created @ 0xa7bc34 - Win32 Thread ID 0xd30
0.160 Thread EFile.exe::StartupThread created @ 0xa7c6c8 - Win32 Thread ID 0x7c8
0.165 Thread EFile.exe::StartupThread Panic Fserv fault 11
0.165 FAULT: KERN 00000004
另外两种情况,可能略有不同。
在论坛上搜了下,看到别人的几个解决方法,试了下都行。
1:Windows系统的%TMP%和%TEMP%环境变量的值包含长路径名导致的,将它们的值设置成C:\temp后emulator就可以正常启动了。
注意是用户变量里面的那个TEMP哦~
好多人都说这样可以解决,我这样试了,问题还是依旧。改了后重启电脑也没用。
2:
这个问题是Windows Server版本的数据执行保护机制造成的,解决办法由两种:
右键点击 我的电脑-〉属性-〉高级-〉性能中的设置按钮-〉数据执行保护
1. 在这里你可以选择“除选择之外,为所有程序和服务启用数据执行保护”,然后把你的模拟器放到排除列表中,例如\Symbian\9.2\S60_3rd_FP1\Epoc32\release\winscw\udeb\epoc.exe
2. 直接选择“只为关键Windows程序和服务启用数据执行保护”,这样比较简单,但要付出损失服务器安全性的代价,当然,如果你的Windows 2003仅仅用于开发而不是真正的服务器,那也无所谓了
这个方法也试了下,也是不行。
3:还有人说干脆直接重装SDK,可看到一个帖子里遇到同样问题的人说重装也解决不了。
4:有人建议更直接的方法,干脆重装系统。(汗~~)
目前,3、4方法我还不想试,毕竟太麻烦。实在没招了再那样。
我看到的讨论问题的帖子地址:
http://discussion.forum.nokia.com/fo...d.php?p=337233
http://discussion.forum.nokia.com/fo...ad.php?t=88514
在这里向大家请教,看有没没有好的解决方法,望不吝赐教。谢谢了先!!!
DevDiv创始人
- 资源分
- 2453
- 激情
- 705
- 可用分
- 122645
- 积分
- 208742
- UID
- 1
Vincent 发表于 2009-3-18 14:15 |只看该作者
是不是remote desktop登陆的呢?
大风起兮云飞扬
Windows Phone开发论坛
Android开发论坛
iPhone开发论坛
Good Luck
- 资源分
- 202
- 激情
- 15
- 可用分
- 32558
- 积分
- 45263
- UID
- 11297
EPOC的运行,是需要权限的,你要确认你安装时,用户是你的XP的管理员身份
如果你是XP的别的账户安装的EPOC,启动不了,
现象就是 看见进程里出现了EPOC.EXE但很快一闪而过
其实是权限问题,与所谓的 数据保护没有任何关系。
- 资源分
- 4
- 激情
- 0
- 可用分
- 925
- 积分
- 1289
- UID
- 8485
Dynasty 发表于 2009-3-18 14:18 |只看该作者
是不是remote desktop登陆的呢?
Vincent 发表于 2009-3-18 14:15
不是的,administrator身份登陆的
DevDiv创始人
- 资源分
- 2453
- 激情
- 705
- 可用分
- 122645
- 积分
- 208742
- UID
- 1
Vincent 发表于 2009-3-18 21:08 |只看该作者
调试过程序吗?
大风起兮云飞扬
Windows Phone开发论坛
Android开发论坛
iPhone开发论坛
DevDiv创始人
- 资源分
- 2453
- 激情
- 705
- 可用分
- 122645
- 积分
- 208742
- UID
- 1
Vincent 发表于 2009-3-18 21:09 |只看该作者
如果不是第一的话,把你调试过的程序从模拟器中清除。
另外,你perl的脚本太高,要用5.6.1的
大风起兮云飞扬
Windows Phone开发论坛
Android开发论坛
iPhone开发论坛
DevDiv创始人
- 资源分
- 2453
- 激情
- 705
- 可用分
- 122645
- 积分
- 208742
- UID
- 1
Vincent 发表于 2009-3-18 21:09 |只看该作者
如果不是第一的话,把你调试过的程序从模拟器中清除。
另外,你perl的脚本太高,要用5.6.1的
大风起兮云飞扬
Windows Phone开发论坛
Android开发论坛
iPhone开发论坛
- 资源分
- 23
- 激情
- 0
- 可用分
- 873
- 积分
- 1309
- UID
- 7258
goodwade 发表于 2009-3-19 11:41 |只看该作者
有可能是机器配置比较低
- 资源分
- 0
- 激情
- 0
- 可用分
- 324
- 积分
- 348
- UID
- 11266
wekl000 发表于 2009-3-20 12:52 |只看该作者
我也觉得是机器配置底的原因,我在内存1G的笔记本上启动模拟器就是一闪而过,或者干脆没反应。
后来在我同学2G的机器上就很顺利就启动了,一切正常。在这俩台机器上装的平台环境一模一样。
趁着现在内存便宜,赶紧加一条吧
- 资源分
- 50
- 激情
- 0
- 可用分
- 2843
- 积分
- 4209
- UID
- 11263
candy 发表于 2009-3-23 09:31 |只看该作者
可以试试拷贝一下别人装好的epoc,前提是你俩的安装路径一样,一般好用
- 资源分
- 0
- 激情
- 0
- 可用分
- 1160
- 积分
- 1484
- UID
- 7427
deepfan 发表于 2009-3-23 09:59 |只看该作者
1、如果是一直都起不来以我的经验重装sdk(我已经重装4次了,现在我的目录都变成S60_3rd_MR_4了,重装一次后面的尾数加一);
2、如果只是偶尔起不来的话关闭一些吃内存比较大的进程
- 资源分
- 73
- 激情
- 0
- 可用分
- 6971
- 积分
- 12017
- UID
- 11527
never115 发表于 2009-3-23 10:41 |只看该作者
就第二种方法最好用吧,我的机子就是这个问题,别的方法都不靠谱
天天挨人踢
- 资源分
- 273
- 激情
- 0
- 可用分
- 10659
- 积分
- 18181
- UID
- 12641
一脚盆的饭锅 发表于 2009-12-22 01:36 |只看该作者
1、如果是一直都起不来以我的经验重装sdk(我已经重装4次了,现在我的目录都变成S60_3rd_MR_4了,重装一次后面的尾数加一);
2、如果只是偶尔起不来的话关闭一些吃内存比较大的进程
deepfan 发表于 2009-3-23 09:59
可以清理下注册表 这样尾巴就没了
- 资源分
- 16
- 激情
- 0
- 可用分
- 1777
- 积分
- 1164
- UID
- 15711
mgx820 发表于 2009-12-22 21:12 |只看该作者
如果开发伙伴们多次安装并卸载S60 3rd edition maintenance SDK,安装文件目录的名字将不断改变,如\Symbian\9.1\S60_3rd_MR_1 或\Symbian\9.1\S60_3rd_MR_2. 为去除安装序列号1 或2,开发伙伴需要于安装前在您PC的Windows注册码数据库中删除下列注册码:
HKEY_LOCAL_MACHINE\SOFTWARE\Nokia\com.nokia.s60
路,一直都在!
IT民工
- 资源分
- 4
- 激情
- 0
- 可用分
- 364
- 积分
- 1082
- UID
- 23106
fullyiop 发表于 2010-1-3 14:36 |只看该作者
遇到同样的问题?不知道楼主怎么解决的。。