2011/3/15 Peter Williams <[email protected]>:
> Hi Sven,
>
>> Date: Tue, 15 Mar 2011 16:02:55 +0100
>> From: [email protected]
>> To: [email protected]
>> Subject: Re: [Lazarus] Unable to rewrite .ini file which exists... error
>> unable to create .ini file. (need to rewrite it).
>>
>> Am 15.03.2011 15:51, schrieb Peter Williams:
>> > I just tried calling Str1 := GetAppConfigDir(true); ShowMessage(Str1);
>> >
>> > and my app is called Color_Life.exe and it returns
>> > "C:\ProgramData\Color_Life\". Since the folder "C:\ProgramData\" exists
>> > and it's subfolder "\Color_Life\" does NOT exist, then does this mean
>> > that I need to create it myself, or will my call to one of the
>> > "MemIniFiles" procedures create the folder for me?
>>
>> You need to create the path yourself. As I said: those functions just
>> return a string. What you do with it, is up to you.
> var
>   str1 : string;
> begin
>   str1 := GetAppConfigDir( true );
>   ShowMessage( Str1 );
>   // note: for Fred.exe returns C:\ProgramData\Fred\
>   if not DirectoryExists(Str1) then
>     // Create Directory Str1
>     // call to 'mkdir' ??? what about on Linux??? and other platforms?
> What is the cross-platform way for me to create the directory in Str1 (as
> returned by GetAppConfigDir) ?
> I would assume that I need to ShellExecute a command for 'mkdir' for
> Windows, correct? How about for Linux and Macs, etc?
> I found this page:
> http://wiki.lazarus.freepascal.org/Executing_External_Programs
> But I have to admit that I was totally lost in what it was trying to
> explain.
> An example, please?

Use function ForceDirectories in sysutils.

Henry

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to