Ceci est une ancienne révision du document !


Les répertoires Windows

Répertoires

GetAppConfigDir

GetAppConfigDir récupère le répertoire de configuration de l'application en cours.

GetAppConfigDir( Global: Boolean ):string;

Exemples :

FPngDir:=GetAppConfigDir(false)+'png'+DirectorySeparator; 
 
Retourne : 'C:\Users\NomUtilisateur\AppData\Local\MonProgramme\png\'
FPngDir:=GetAppConfigDir(true)+'png'+DirectorySeparator; 
 
Retourne : 'C:\ProgramData\MonProgramme\png\'

Dans ces exemple MonProgramme est retourné via la fonction ApplicationName

Si VendorName est defini il sera ajouté au repertoire…
voir ci dessous pour définir VendorName

'C:\ProgramData\MyCustomVendor\MonProgramme\png\'
ou
'C:\Users\NomUtilisateur\AppData\Local\MyCustomVendor\MonProgramme\png\'

GetAppConfigFile

GetAppConfigFile retourne le nom du fichier de configuration de l'application.

Function GetAppConfigFile(Global : Boolean) : String;
Function GetAppConfigFile(Global : Boolean; SubDir : Boolean) : String;

Resultats

GetAppConfigFile(false) = 'C:\Users\thierry\AppData\Local\Vendor\AppName\AppName.cfg'
GetAppConfigFile(false,true) = 'C:\Users\thierry\AppData\Local\Vendor\AppName\Config\AppName.cfg'
GetAppConfigFile(false,false) = 'C:\Users\thierry\AppData\Local\Vendor\AppName\AppName.cfg'
GetAppConfigFile(true) = 'C:\ProgramData\Vendor\AppName\AppName.cfg'
GetAppConfigFile(true,true) = 'C:\ProgramData\Vendor\AppName\Config\AppName.cfg'
GetAppConfigFile(true,false) = 'C:\ProgramData\Vendor\AppName\Config\AppName.cfg'

Modification de l'extension du fichier Config

ConfigExtension:='.ini'; // Variable globale
 
GetAppConfigFile(true) = 'C:\ProgramData\Vendor\AppName\AppName.ini'

SysConfigDir

SysConfigDir = C:\WINDOWS

GetTempDir

Function GetTempDir(Global : Boolean) : String;
Function GetTempDir : String;
 
 TGetTempDirEvent  = Function (Global : Boolean) : String;

Resultats :

GetTempDir(true) = C:\Users\NomUtilisateur\AppData\Local\Temp\
GetTempDir(false) = C:\Users\NomUtilisateur\AppData\Local\Temp\
GetTempDir = C:\Users\NomUtilisateur\AppData\Local\Temp\

GetTempFileName

Function GetTempFileName(Const Dir,Prefix : String) : String;
Function GetTempFileName : String;
function GetTempFileName(Dir,Prefix: PChar; uUnique: DWORD; TempFileName: PChar):DWORD;
 
TGetTempFileEvent = Function (Const Dir,Prefix : String) : String;

GetUserDir

Function GetUserDir : String;

Application.Location

Application.Location = 'J:\Users\NomUtilisateur\Backuped\Lazarus\MesProjets\PrgTest\Test1\'

Application.ExeName

Application.ExeName = 'J:\Users\NomUtilisateur\Backuped\Lazarus\MesProjets\PrgTest\Test1\MonAppli.exe'

Fonctions utiles

ApplicationName

La fonction globale AppicationName retourne le nom de l'application.

Function ApplicationName : String;

Detournement de ApplicationName avec OnGetApplicationName

implementation
 
Function CustomAppName: String;
begin
  result:='MyCustomName';
end;
 
procedure TMainForm.FormCreate(Sender: TObject);
begin
  OnGetApplicationName:=@CustomAppName;
  // Maintenant la function ApplicationName retournera 'MyCustmName'
end;        

VendorName

La fonction globale VendorName retourne le nom du fournisseur de l'application.

Function ApplicationName : String;

Par defaut VendorName retourne une chaine vide il faut definir la fonction OnGetVendorName pour retourner le nom du fournisseur

Definition de VendorName avec OnGetVendorName

implementation
 
Function CustomVendorName: String;
begin
  result:='MyCustomVendorName';
end;
 
procedure TMainForm.FormCreate(Sender: TObject);
begin
  OnGetVendorName:=@CustomVendorName;
  // Maintenant la function VendorName retournera 'MyCustomVendorName'
end;        
Vous pourriez laisser un commentaire si vous étiez connecté.