Форум: "Основная";
Текущий архив: 2002.06.27;
Скачать: [xml.tar.bz2];
ВнизDll Найти похожие ветки
← →
Niko. (2002-06-15 19:07) [0]Как из библиотеки узнать в каком каталоге она находится. Если брать Paramstr(0) то возвращается полное имя программы, которая запустила эту библиотеку, а мне нужен каталог самой библиотеки.
← →
~Rand~ (2002-06-15 22:34) [1]Удалено модератором
← →
Guerrillero Che (2002-06-16 13:21) [2]Все очень просто,используя ExtractFilePath:
ShowMessage(ExtractFilePath(ParamStr(0)));
← →
Набережных С. (2002-06-16 18:01) [3]Код в DLL:
function GetModuleFullName(Buff: PChar; var NumChars: integer): bool; stdcall;
var
n:integer;
begin
n:=GetModuleFileName(hInstance,Buff,NumChars-1);
Result:= n > 0;
if Result then
begin
Buff[n+1]:=#0;
NumChars:=n;
end;
end;
Вызов:
var
s:string;
n:integer;
begin
n:=MAX_PATH;
SetLength(s,MAX_PATH);
if GetModuleFullName(@s[1],n) then
ShowMessage(PChar(s))
else
RaiseLastWin32Error;
SetLength(s,0);
end;
← →
VID (2002-06-16 18:22) [4]TO Guerrillero Che: ничего не просто. А если dll находиться в одной папке, а вызывающая её прога в другой ?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.27;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.011 c