Problem with RProcess::Create()

Login to reply to this topic.
Mon, 2007-08-27 19:10
Joined: 2005-01-29
Forum posts: 17

Hi,
I am using Series60 3rd Edition for my development. In my application I am trying to create one process using RProcess class. According to the symbian class document, the default path where the RProcess::Create() searches the executable is \System\Programs. But when I was trying to call the RProcess::Create() using the the executable lying in the above mentioned path, it returns error "-1". Also I placed my executable "*.exe" in phone's C,E drives i.e. c:\*.exe and e:\*.exe and when I called RProcess::Create() using the above mentioned paths again it gives me error "-1". I have verified the error on dvice and emulator both.
I have tested the same application in my friends PC, who is having different hardware config. but its working fine in his machine.

Also if we are executing our emulator in debugging mode and placed our "*.exe" in
release\winscw\udeb folder, then its working fine if we mentioned the "*.exe" file name only in RProcess:Create().
Why this strange behavior?
Any comment/help in this regard is really appreciable.
Thxs.


Mon, 2007-08-27 22:05
Forum Nokia Champion
Joined: 2003-10-01
Forum posts: 723
Re: Problem with RProcess::Create()

I don't know where you got \System\Programs from, I mean for an S60 3rd Ed device, nevertheless it's wrong: you must put all your executables (DLLs, EXEs, etc.) in \Sys\Bin. That's the right path, Symbian OS Loader will not load anything outside that directory.

Tote


Gabor Torok
Software architect, Agil Eight (http://www.agileight.com/)
Blog: http://mobile-thoughts.blogspot.com/

Wed, 2007-08-29 04:43
Joined: 2005-01-29
Forum posts: 17
Re: Problem with RProcess::Create()

Thanks for your response.
\System\Programs is clearly mentioned in the s60 third edition SDK help.
Can you also tell me, whether I need a sis file to place all my exe and dll's file in \sys\bin or is it possible to copy paste individual file?
Also is it possible to load "exe" that exist on external memory i.e. e: drive?

Wed, 2007-08-29 14:06
Joined: 2004-11-29
Forum posts: 1246
Re: Problem with RProcess::Create()

You must use the installer to put files in \sys\bin\, or have AllFiles capability (which you cant get if you don't have a good usecase for it, and wanting to bypass the installer is not a good usecase)

the \system\programs\ in the SDK documentation is wrong... unfortunatly the SDK documentation is not without errors... The information on RProcess::Create seems to be out of date...

You can load an exe from the memory card if you put it in e:\sys\bin\, but you need AllFiles, or add the file there with your PC or use the installer.

You can't put a exe here that has the same name as an exe that exists on Z: or C: though, because these locations will be searched before the E:

Any path you give to RProcess::Create will be ignored.

  • Login to reply to this topic.