2010-01-14 67 views
0

好日子所有,QT在Win CE 5.0碰撞

这是我第一次在Windows CE使用Qt,我遇到了一个问题。 也许有人可以帮助我。

我将描述我的设置。我在Visual Studio 2005中使用XP,Qt 加载项版本1.1.2。我下载了用于Windows CE的Qt源码,并按照这些 (http://doc.trolltech.com/4.4/install-wince.html)指令 上的说明构建了 用于CE的库。

然后,我使用Visual Studio创建一个最小的Qt Windows CE 应用程序。该程序运行在CE模拟器罚款,但一旦我尝试 它与下面的消息崩溃设备上部署它:

加载模块:qt_ce_3.exe 加载模块:QtGui4.dll 加载模块:msvcr80。 dll的 载入模块:QtCore4.dll 载入模块:CEShell.DLL 载入模块:OLEAUT32.DLL 载入模块:commctrl.dll.0409.MUI 载入模块:COMMCTRL.DLL 载入模块:aygshell.dll 加载模块:WS2.dll 加载模块:WINSOCK.dll 加载模块:coredll.dll.0409.MUI 加载模块:ossvcs.dl升 载入模块:OLE32.DLL 载入模块:coredll.dll中 载入模块:MMTimer.dll 数据中止:线程= 8fb09a40 PROC = 8c4ecea0 'qt_ce_3.exe' AKY = 00040001 PC = 012a80b0(qtcore4.dll + 0x000680b0 ) RA = 012a8168(qtcore4.dll + 0x00068168)BVA = 676e4574 FSR = 000000f5 qt_ce_3.exe中的0x012a80b0未处理的异常:0xC0000005:访问 违规读取位置0x676e4574。

我试过了两台不同厂家的设备,结果 是一样的。在其中一个调试版本上工作,另一个在 内存耗尽。

有没有人有任何想法这可能是什么?

由于提前, 迈克尔

回答

0

我使用的Qt 4.5在Windows CE 5.0定制的设备上有一些奇怪的崩溃(访问冲突Qt中的DLL等)。我会描述你们其中的一些...
第一个麻烦的原因(甚至QT样品不想运行)是在设备上的8位彩色模式,这是通过调整视频驱动程序设置解决。第二个麻烦的原因是内存不足(在我的qt构建配置中,只有Qt dll花费> 10 Mb的RAM),这是通过减少Windows CE映像和驱动程序大小解决的。
有时在嵌入式设备上很难找到问题的根源,但我建议你先编译\在台式机上运行你的示例程序,检查它们的逻辑错误,然后才开始在设备端搜索错误。 。

+0

非常感谢。 事情是,这是一个微不足道的程序。我只是创建最简单的应用程序,使用Qt Visual Studio加载项(您可以选择创建一个Win CE应用程序),因此问题不在于我的逻辑。 但是,我会尝试通过使用您的建议来解决我的问题。 迈克尔 – Michael

+0

禁用iwmmxt指令的窍门。 – Michael

+0

您是否使用编译器设置执行此操作? – cybevnm

0

非常感谢。

事情是这是一个微不足道的程序。我只是创建最简单的应用程序,使用Qt Visual Studio加载项(您可以选择创建一个Win CE应用程序),因此问题不在于我的逻辑。

但是我会尝试通过使用您的建议来解决我的问题。

Michael