Как мне вернуть строку из 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 без сбоев?

Ответы на вопрос(1)

Ваш ответ на вопрос