¿Cómo devuelvo una cadena de DLL a Inno Setup Pascal Script

Tengo dos funciones C en un archivo DLL que se definen en el archivo de definición y se exportan para usar en Inno Setup.

char* __stdcall GetName()
{
        return "Kishore";
}
void __stdcall getName(char* strName)
{
     strcpy(strName, "Kishore");
}

El código de configuración de Inno cargará la DLL personalizada y llamará a la función / procedimiento para devolver los nombres

{ 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

¿Cómo puedo recuperar el nombre en el script Inno Setup sin que falle?

Respuestas a la pregunta(0)

Su respuesta a la pregunta