Criar sub-diretório no diretório do EXE no Delphi
Inclua na seção uses: FileCtrl, SysUtils
Primeiramente vamos conhecer algumas funções do Delphi que precisaremos usá-las: ParamStr(Indice) - Retorna valores passados na linha de comando quando executamos o programa. Se o valor de Indice for 0 (zero) será retornado o caminho+nome do EXE. ExtractFilePath(NomeArq) - Retorna o caminho (path) do nome de arquivo informado. Exemplo: S := 'C:\NomeDir\Programa.exe'; ExtractFilePath(S); { retorna: 'C:\NomeDir\' } DirectoryExists(CaminhoDir) - Retorna true se o diretório informado existe. False em caso contrário. CreateDir(CaminhoDir) - Tenta criar o diretório informado. Se conseguir, retorna true. Caso contrário retorna false. Agora que sabemos como trabalham estas funções, vamos escrever uma função que precisamos para criar um sub-diretório conforme proposto. function CriaSubDir(const NomeSubDir: string): boolean; var Caminho: string; begin Caminho := ExtractFilePath(ParamStr(0)) + NomeSubDir; if DirectoryExists(Caminho) then Result := true else Result := CreateDir(Caminho); end; Exemplo de uso: - Chame a função no evento OnCreate do form: procedure TForm1.FormCreate(Sender: TObject); begin if not CriaSubDir('MeuSubDir') then ShowMessage('Não foi possível criar o sub-diretório MeuSubDir.'); end;