From: SourceForge.net <no...@so...> - 2004-03-19 13:26:31
|
Bugs item #919321, was opened at 2004-03-19 09:29 Message generated for change (Comment added) made by kichik You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=373085&aid=919321&group_id=22049 Category: Scripting Group: 2.0 Series >Status: Deleted >Resolution: Invalid Priority: 5 Submitted By: lazylizard (lazylizard) >Assigned to: Amir Szekely (kichik) Summary: Does ExecWait really wait? Initial Comment: Hello. I've got NSIS 2.0 My operating system is XP Professional SP1. This is the code: ;.... SetOutPath $INSTDIR File "UPDATE\Update.exe" ExecWait "$INSTDIR\Update.exe" Delete "$INSTDIR\Update.exe" ; the file Update.exe still exists :( ; and the error flag is now set anyways :((( IfErrors "" update_sux_ass_ful Abort "Update problem" update_sux_ass_ful: ; .... Sorry if this is not a bug; "A process objects state is signaled when the process terminates." says WinSDK in WaitForSingleObject() documentation, but I just don't remember if process termination means unlocking the executable file. I'm using Sleep after ExecWait and it works well, but i hope there is a better solution. BTW, thanks for the great install system! ---------------------------------------------------------------------- >Comment By: Amir Szekely (kichik) Date: 2004-03-19 15:26 Message: Logged In: YES user_id=584402 Some processes spawn child processes and exit. ExecWait can't wait on those because it waits for the parent process which exits. There are some methods to avoid this. For example, for other installers see: http://forums.winamp.com/showthread.php? s=&threadid=125550&highlight=%2FSMS ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=373085&aid=919321&group_id=22049 |