====== 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...\\
[[#vendorname|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;
===== Constantes utiles =====
==== DirectorySeparator = '\' ====
aussi nommé ''PathDelim''
==== DriveSeparator = ':' ====
Aussi nommé ''DriveDelim''
==== ExtensionSeparator = '.' ====
==== PathSeparator = ';' ====
Aussi nommé : ''PathSep''
==== MaxPathLen = 260 ====
Aussi nommé : ''MAX_PATH''
==== AllFilesMask = '*' ====