Hi all,
I am not able to install a Symbian C++ application to my phone (Symbian 3rd ED FP 1). The application uses a shared DLL.
Both the application (program) and the dll have UIDs from the symbian site (registered).
I've read more than 10 different topics in this forum and I've tried all the possibilities without success.
I create a .sisx file from my application and when I try to install it I get the following error:
"Unable to install a protected application from an untrusted application supplier"
First I've tried without embedding the sis file of my DLL into the application sis file. It didn't work.
Secondly, I've tried to make a sis separately only for the DLL. After many failed attempts and modifications it worked. I was able to install the dll from a signed .sisx file. The problem is how do I use that installed dll into an application that I want to install?
Thirdly I've tried to embed the DLL (as a signed sis file) into the application signed sis file. It doesn't work. Application + DLL work fine in emulator. Please help me install my application + DLL into the phone. I have a developer certificate and I've signed the sis files.
.mmp of DLL:
Code:
TARGET ARlib.dll
TARGETTYPE DLL
UID 0x00000000 0x20021D4B
//Old UID allocated is 0x20021D4B
USERINCLUDE .
SYSTEMINCLUDE . \epoc32\include \epoc32\include\libc
SOURCEPATH ..
SOURCE arLib.cpp
nostrictdef
LIBRARY euser.lib
LIBRARY estlib.lib
#ifdef ENABLE_ABIV2_MODE
DEBUGGABLE
#endif
//#if defined(WINS)
// deffile .\ARLibWINS.def
//#else if defined(ARM)
// deffile .\ARLibARM.def
//#endif
EXPORTUNFROZEN
CAPABILITY CommDD DiskAdmin LocalServices Location MultimediaDD NetworkControl NetworkServices PowerMgmt ProtServ ReadDeviceData ReadUserData SurroundingsDD SwEvent TrustedUI UserEnvironment WriteDeviceData WriteUserData
.pkg of DLL
Code:
#{"ARLib DLL"},(0x20021D4B),1,0,0
;Localised Vendor name
%{"Vendor-EN"}
;Unique Vendor name
:"Vendor"
"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\ARLib.dll" -"!:\sys\bin\ARLib.dll"
.mmp file for application
Code:
TARGET MobileAR_0x20021D4C.exe
TARGETTYPE exe
UID 0x100039CE 0x20021D4C
EPOCSTACKSIZE 0x5000 //20Kb (max is 80KB)
EPOCHEAPSIZE 0x1000000 0x2000000 // 16Mb - 32Mb ; Default minimum 4 kB, maximum 1 MB that is 0x1000 - 0x10000
SOURCEPATH ..\src
SOURCE MobileAR.cpp
SOURCE MobileARApplication.cpp
SOURCE MobileARAppView.cpp
SOURCE MobileARAppUi.cpp
SOURCE MobileARDocument.cpp
SOURCEPATH ..\data
START RESOURCE MobileAR.rss
HEADER
TARGET MobileAR_0x20021D4C
TARGETPATH resource\apps
END //RESOURCE
START RESOURCE MobileAR_reg.rss
TARGET MobileAR_0x20021D4C_reg
TARGETPATH \private\10003a3f\apps
END //RESOURCE
USERINCLUDE ..\inc
USERINCLUDE ..\help \symbian_carbide_cpp\ARlib\group \symbian_carbide_cpp\ARlib \symbian_carbide_cpp\ARlib\AR
SYSTEMINCLUDE \epoc32\include
SYSTEMINCLUDE \epoc32\include\libc +\release\winscw\udeb
LIBRARY euser.lib
LIBRARY apparc.lib
LIBRARY cone.lib
LIBRARY eikcore.lib
LIBRARY avkon.lib
LIBRARY commonengine.lib
LIBRARY efsrv.lib
LIBRARY estor.lib
LIBRARY aknnotify.lib
LIBRARY hlplch.lib
LIBRARY ARlib.lib
LANG SC
VENDORID 0
SECUREID 0x20021D4C
CAPABILITY ReadUserData
#ifdef ENABLE_ABIV2_MODE
DEBUGGABLE
#endif
// End of File
.pkg file of application
Code:
;Language - standard language definitions
&EN
; standard SIS file header
#{"MobileAR"},(0x20021D4C),1,0,0
;Localised Vendor name
%{"Vendor-EN"}
;Unique Vendor name
:"Vendor"
;Supports Series 60 v 3.0
[0x101F7961], 0, 0, 0, {"Series60ProductID"}
;Files to install
;You should change the source paths to match that of your environment
;<source> <destination>
"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\MobileAR_0x20021D4C.exe" -"!:\sys\bin\MobileAR_0x20021D4C.exe"
"$(EPOCROOT)Epoc32\data\z\resource\apps\MobileAR_0x20021D4C.rsc" -"!:\resource\apps\MobileAR_0x20021D4C.rsc"
"$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\MobileAR_0x20021D4C_reg.rsc" -"!:\private\10003a3f\import\apps\MobileAR_0x20021D4C_reg.rsc"
"$(EPOCROOT)Epoc32\data\z\resource\apps\MobileAR_0x20021D4C.mif" -"!:\resource\apps\MobileAR_0x20021D4C.mif"
"..\help\MobileAR_0x20021D4C.hlp" -"!:\resource\help\MobileAR_0x20021D4C.hlp"
@"C:\symbian_carbide_cpp\ARlib\sis\ARLib_EKA2.sisx", (0x20021D4B)
; Add any installation notes if applicable
;"MobileAR.txt" -"!:\private\20021D4C\MobileAR.txt"
;required for application to be covered by backup/restore facility
"..\sis\backup_registration.xml" -"!:\private\20021D4C\backup_registration.xml"
Observations:
- I've tried with same UID3 for both app and DLL and nothing
- In my phone's application manager "All" setting is enabled
Thanks,
Omar