Получение имени модуля
Вот мое решение. Я использовал его во многих программах и смело рекомендую его вам.
procedure TForm1.Button1Click(Sender: TObject);
var
szFileName: array[0..49] of char;
szModuleName: array[0..19] of char;
iSize : integer;
begin
StrPCopy(szModuleName, 'NameOfModule');
iSize:= GetModuleFileName(GetModuleHandle(szModuleName), szFileName, SizeOf(szFileName));
if iSize gt; 0 then ShowMessage('Имя модуля с полным путем: ' + StrPas(szFileName))
else ShowMessage('Имя модуля не встречено');
end;