Как мне вернуть строку из DLL в Inno Setup Pascal Script
У меня есть две функции C в DLL, которые определены в файле определения и экспортированы для использования в Inno Setup.
char* __stdcall GetName()
{
return "Kishore";
}
void __stdcall getName(char* strName)
{
strcpy(strName, "Kishore");
}
Код Inno Setup загрузит пользовательскую DLL и вызовет функцию / процедуру, чтобы вернуть имена
{ Inno Setup script }
[Code]
procedure getName(MacAddress: String);
external 'getName@files:MyDll.dll stdcall setuponly';
function GetName():PAnsiChar;
external 'GetName@files:MyDll.dll stdcall setuponly';
function NextButtonClick(CurPage: Integer): Boolean;
var
StrName: String;
begin
SetLength(StrName,15);
getName(StrName); { displaying only single character }
StrName := GetName(); { this call is crashing }
end
Как я могу получить имя в скрипте Inno Setup без сбоев?