RLibrary + Load() + KErrNotFound

Login to reply to this topic.
Fri, 2007-06-29 00:05
Joined: 2006-08-21
Forum posts: 39

Hi all,

I'm trying to load a DLL using RLibrary::Load(dllName.dll) but getting -1 (Symbian 8 ).

Dll location: c:\system\libs\myDll.dll

I'm passing only myDll.dll as name into RLibrary::Load();
Strange thing is, i have an old version of this dll which i loaded without any problem. I have problem only with this updated new version of mydll.Both new and old dll have same name and same uid.But for some strange reason only old one is loaded and for new one i get KErrNotFound

Any tip????

Thanks


Fri, 2007-06-29 16:10
Joined: 2005-07-28
Forum posts: 121
Re: RLibrary + Load() + KErrNotFound

Hi ya,

When Symbian loads any library it checks to see what DLL's the specified library needs. So your dll may depend on other dll's being loaded. And you have probably not placed these child dll's on the device.

Basically the LIBRARY statements in the mmp files create what amounts to a dependancy tree for each DLL. On RLibrary::LoadL() the kernel traces through the tree loading every other DLL that it finds. It leaves with -1 when it can't find what it's looking for. - This is pretty similar to other OS's (Windows / Linux etc ).

Parent DLL
--- Child DLL # 1 (LIBRARY statements in mmp )
--- --- Child's Child DLL....
--- --- --- Child's Child DLL....
--- --- --- Child's Child DLL....
--- --- --- --- --- Child's Child DLL....

--- Child DLL # 2 (LIBRARY statements in mmp )

Fri, 2007-06-29 19:21
Joined: 2006-08-21
Forum posts: 39
Re: RLibrary + Load() + KErrNotFound

Bundle of thanks Smiling

its camautofocus.lib which i'm using but forgot to copy on device in this new version of mydll.

Cheers!!

  • Login to reply to this topic.