DLL加载
做了个DLL,在wins下调试成功,然后在armi下也生成了dll和lib文件(但是有3个错误),然后在程序中调用这个dll,生成了sis文件,安装到手机上却不能运行,程序不调用这个dll时在手机上可以运行。是什么问题,请大家帮我分析一下
贴上dll的生成日志放在附件上
贴上程序的的生成日志:
正在执行生成文件项目操作
* Current build configuration: ARMI UREL
* Creating makefile for platform ARMI
epocroot =
* D:\Nokia\Tools\Carbide_vs\makmake.bat \project\DMTest\group\DMTest ARMI
* Running build action: build
epocroot =
* D:\Nokia\Tools\Carbide_vs\make.bat -f D:\project\DMTest\group\DMTest.ARMI UREL
gcc -s -fomit-frame-pointer -O -march=armv4t -mthumb-interwork -pipe -c -nostdinc -Wall -Wno-ctor-dtor-privacy -Wno-unknown-pragmas -DNDEBUG -D_UNICODE -D__SYMBIAN32__ -D__GCC32__ -D__EPOC32__ -D__MARM__ -D__MARM_ARMI__ -D__DLL__ -I "..\SRC" -I "." -I "..\INC" -I "." -I "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\INCLUDE" -o ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTESTCONTAINER.o "..\SRC\Dmtestcontainer.cpp"
In file included from ..\SRC\Dmtestcontainer.cpp:12:
..\INC\DMTestContainer.h(37): warning: `/*' within comment
..\INC\DMTestContainer.h(49): warning: `/*' within comment
..\\SRC\\Dmtestcontainer.cpp: In method `void CDMTestContainer::OnDecode()':
..\\SRC\\Dmtestcontainer.cpp(167): warning: unused variable `TInt dwEffWidth'
if exist "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in" del "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in"
ar cr ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTESTAPP.o ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTESTAPPUI.o ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTESTCONTAINER.o ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTESTDOCUMENT.o
dlltool -m arm_interwork --output-def "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.inf" "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in"
perl -S makedef.pl -Deffile "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.inf" -1 NewApplication__Fv "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\DMTEST.def"
dlltool -m arm_interwork --def "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\DMTEST.def" \ --output-exp "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.exp" \ --dllname "DMTEST[0be7cc08].APP"
ld -s -e _E32Dll -u _E32Dll "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.exp" --dll \ --base-file "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.bas" -o "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.APP" \ "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EDLL.LIB" --whole-archive "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in" \ --no-whole-archive ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EDLLSTUB.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EGCC.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\COMMONDIALOGS.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\BITMAPTRANSFORMS.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKSRV.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\AKNNOTIFY.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\BAFL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\IMAGECONVERSION.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\DMDECODE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCTL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCDLG.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\FBSCLI.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\ESTLIB.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EFSRV.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EUSER.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\APPARC.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\CONE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCORE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCOCTL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\AVKON.LIB
dlltool -m arm_interwork \ --def "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\DMTEST.def" \ --dllname "DMTEST[0be7cc08].APP" \ --base-file "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.bas" \ --output-exp "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.exp"
ld -s -e _E32Dll -u _E32Dll --dll \ "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.exp" \ -Map "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\DMTEST.APP.map" -o "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.APP" \ "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EDLL.LIB" --whole-archive "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.in" \ --no-whole-archive ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EDLLSTUB.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EGCC.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\COMMONDIALOGS.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\BITMAPTRANSFORMS.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKSRV.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\AKNNOTIFY.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\BAFL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\IMAGECONVERSION.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\DMDECODE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCTL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCDLG.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\FBSCLI.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\ESTLIB.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EFSRV.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EUSER.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\APPARC.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\CONE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCORE.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\EIKCOCTL.LIB ..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\AVKON.LIB
petran "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\BUILD\PROJECT\DMTEST\GROUP\DMTEST\ARMI\UREL\DMTEST.APP" "..\..\..\SYMBIAN\8.0A\S60_2ND_FP2\EPOC32\RELEASE\ARMI\UREL\DMTEST.APP" \ -nocall -uid1 0x10000079 -uid2 0x100039ce -uid3 0x0be7cc08
PETRAN - PE file preprocessor V01.00 (Build 191)
Copyright (c) 1996-2004 Symbian Ltd.
* Updating D:\project\DMTest\sis\DMTest.pkg
* Creating install file at D:\project\DMTest\sis\DMTest.sis
epocroot = \Symbian\8.0a\S60_2nd_FP2\
* D:\Symbian\8.0a\S60_2nd_FP2\\epoc32\tools\makesis.exe D:\project\DMTest\sis\DMTest.pkg
Processing D:\project\DMTest\sis\DMTest.pkg...
Created D:\project\DMTest\sis\DMTest.SIS