Fórum Pegar pasta atual da DLL #341181
02/05/2007
0
Seguinte.. estou tendo um problema meio estranho... tenho um programa feito por mim, que está em uma determinada pasta (C:\prg por exemplo) e algumas DLL´s compartilhadas que estão em outra pasta(c:\LIB por exemplo).
Dentro de uma DLL, em um determinado procedimento eu preciso pegar a pasta atual, mas a pasta onde está a DLL e não o executável que a está chamando, pois nesta pasta da DLL eu tenho um arquivo de configuração que ela precisa ler.
Quando eu chamo a função ExtractFilepath(application.ExeName) recebo a pasta onde está o executável (c:\prg) e não onde está a DLL (c:\lib). Como eu faço para pegar a pasta onde se encontra a DLL?
Muito Obrigado.
Alemão
Prgdelphi
Curtir tópico
+ 0Posts
02/05/2007
Paullsoftware
Pergunta! atavés do seu sistema vc consegue encontrar as dll´s??
uma solução simples seria vc guardar os paths em um arquivo ini/xml e fazer as chamadas através desse arquivo...
Gostei + 0
03/05/2007
Prgdelphi
Também tinha pensado no parametro informando a pasta, mas achei que o Delphi possuia alguma função para determinar a pasta. Vou ter que optar por esta solução mesmo.
Muito obrigado!
Gostei + 0
02/10/2014
Adriano Neto
var
szFileName: array[0..MAX_PATH] of Char;
begin
FillChar(szFileName, SizeOf(szFileName), #0);
GetModuleFileName(hInstance, szFileName, MAX_PATH);
Result := szFileName;
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)