Archive: nsExec/ExecDos return 128...why?


nsExec/ExecDos return 128...why?
I have a 2003 Windows Server I am attempting to install an application. The install fails as the nsExec command in my nis script I am using all return 128 and the supplied command is not executed.

I than used the following test.nsi script provided with a nsi compiler tool and received the same 128 errors.

Name "nsExec Test"

OutFile "nsExec Test.exe"

ShowInstDetails show

Section "Silent MakeNSIS"
nsExec::Exec '"${NSISDIR}\makensis.exe"'
Pop $0 # return value/error/timeout
DetailPrint ""
DetailPrint " Return value: $0"
DetailPrint ""
SectionEnd

Section "MakeNSIS commands help"
nsExec::ExecToLog '"${NSISDIR}\makensis.exe" /CMDHELP'
Pop $0 # return value/error/timeout
DetailPrint ""
DetailPrint " Return value: $0"
DetailPrint ""
SectionEnd

Section "Output to variable"
nsExec::ExecToStack '"${NSISDIR}\makensis.exe" /VERSION'
Pop $0 # return value/error/timeout
Pop $1 # printed text, up to ${NSIS_MAX_STRLEN}
DetailPrint '"${NSISDIR}\makensis.exe" /VERSION printed: $1'
DetailPrint ""
DetailPrint " Return value: $0"
DetailPrint ""
SectionEnd

I have no idea what has chaned on this server cause it once looked.

I have been searching the forum for the past couple of hours but didn't find any answer. There was one post which kinda describe the same problem but the solution didn't seem to apply. Any ideas?

Mike


Exit codes of your script are 1/1/0 both for nsExec and ExecDos in my Vista. Two versions of error 128 (no child process to wait for) from Google: 1) incorrect cmd.exe; 2) adware or computer infections. For me it looks like process was created (CreateProcess not returned error), but just after this process was terminated by system.


Looks like it is Symantec Endpoint Protection as when it is removed everything works fine. I have searched Symantec's site and google and there is nothing about this. I find it hard to believe I am the first to come across this false positive.

I'll be sending information to Symantec to ensure this is resolved.

As a side note, I tried it on a different computer with Symatec Endpoint Protection (version 11.0.5002.333 with Nov 1st, 2010 defintions) and the return value was -1073741819 (instead of 128) but this was a Windows XP version 2002 SP3.

Mike