On Feb 5, 2009, at 4:00 PM, Jonas Maebe wrote:
On 05 Feb 2009, at 22:52, Paul Nicholls wrote:
MyProgramFolder := ExtractFilePath(ParamStr(0));
This should hopefully get you the folder of the currently running
program
from within the program (at least under Win32 and Linux).
That is completely OS (and sometimes OS-version) dependent, and
should not be used if you want portable code (even on Linux it does
not work under all circumstances).
Ok, now I'm curious.
Why doesn't this work? is it because of the way shells interpret
currently running program? or is there something related to process
ids or something?
If this doesn't work under all oses, is it something that could be
fixed so it could work "properly"?
I'm not all that familiar with internal os complexities, though I do
seem to be drawing closer to that mark these days, but this seems to
me to be an extremely important thing to know, and if fpc could be
patched to provide this bit of info, shouldn't it be done?
How much troube would this be on an os like OSX for instance, where
the app bundle isn't necessarily the same as the application itself?
I'm personally still using fpc to write terminal apps, because (as
mentioned before) carbon apis aren't all that accessible for folks
using voiceover, and since that's my main access to the os, I can't
really use the ibuilder to design my interfaces, and the sample code
for generating interface elements on the fly is spotty at best.
So, for me, this isn't as much of an issue, but I certainly do have
some ideas where this would be extremely useful, and I'm wondering how
much trouble it would be to get the info of the app folder, as well as
the actual executing path.
So, feel free to pull out all the stops, spare me none of the gory
details. I may not understand them all, but I sure would like to see
them anyhow. (they will likely make sense later on).
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal