Falha ao executar a função de script de Ações Personalizadas

Eu implementei um arquivo installscript próprio que permitirá ao instalador registrar as dlls. Combinei isso com uma ação personalizada para realmente executar a função que criei. Eu tive que fazer esse script porque as dlls estavam falhando ao registrar a configuração da propriedade para se registrar automaticamente. Então, eu estou preso em como resolver esse problema com a ação personalizada falhando para que eu possa testar meu script. Abaixo está o meu script:

#include "Ifx.h"

export prototype RegisterComponents(HWND);

function RegisterComponents(hMSI)

STRING sRunStr;

begin

sRunStr = WINSYSDIR ^ "regsvr32.exe";

LongPathToQuote(sRunStr, TRUE);

//change the directory to target directory
ChangeDirectory(TARGETDIR);

//register dll
if(LaunchAppAndWait(sRunStr, "/s " + 
"C:\NCRUniEmulatorService\NCRUniEmulatorSO.dll", 
WAIT)) < 0) then
MessageBox("NCRUniEmulatorSO.dll", SEVERE);
else
endif;

end;

Abaixo estão minhas ações personalizadas:

Nome da Função: RegisterComponents

Processamento de devolução: síncrono

Execução em script: execução adiada

Instale o Sequence Exec: After PublishProduct

Todas as outras configurações de sequência são definidas como Ausente da sequência.

arquivo de log

InstallShield 14:17:18: Chamando a função de script RegisterComponents InstallShield 14:17:18: Falha ao executar a função de script, erro 0x80020006 InstallShield 14:17:18: CallScriptFunctionFromMsiCA () termina, o resultado 0x643 CustomAction RegisterComponents retornou o código de erro real 1603, mas será traduzido para o sucesso devido a continuar marcando

questionAnswers(1)

yourAnswerToTheQuestion