Installation 如何从NSIS函数中使用的标签调用节?
我正在比较由.onInit调用的函数中的版本检查,如果此版本检查告诉计算机有旧版本,则我希望卸载旧版本。如何做到这一点??我的方法是,如果存在旧版本,则消息框显示“您已安装旧版本”,单击“确定”安装新版本,或单击“取消”继续使用旧版本。IDOK IDCANCEL取消ok:ExecWait uninstall;执行uninstall.exe取消:中止;继续旧版本 这里的问题是ExecWait在较新版本的安装中并行执行。(两个r均为2个不同的螺纹) 为此,我只想在要静默卸载的函数的标签中包含卸载部分 请指导我如何从函数调用部分Installation 如何从NSIS函数中使用的标签调用节?,installation,nsis,Installation,Nsis,我正在比较由.onInit调用的函数中的版本检查,如果此版本检查告诉计算机有旧版本,则我希望卸载旧版本。如何做到这一点??我的方法是,如果存在旧版本,则消息框显示“您已安装旧版本”,单击“确定”安装新版本,或单击“取消”继续使用旧版本。IDOK IDCANCEL取消ok:ExecWait uninstall;执行uninstall.exe取消:中止;继续旧版本 这里的问题是ExecWait在较新版本的安装中并行执行。(两个r均为2个不同的螺纹) 为此,我只想在要静默卸载的函数的标签中包含卸载部分
提前感谢您不能呼叫部门,但您可以这样做:
Function MySectionCode
# My code goes here
FunctionEnd
Function .onInit
call MySectionCode
FunctionEnd
Section "MySection"
call MySectionCode
SectionEnd
需要明确的是,ExecWait总是等待子进程,但有时子进程启动它的子进程而不等待它们。要等待NSIS卸载程序,您需要使用特殊命令。您不能调用节,但可以执行以下操作:
Function MySectionCode
# My code goes here
FunctionEnd
Function .onInit
call MySectionCode
FunctionEnd
Section "MySection"
call MySectionCode
SectionEnd
需要明确的是,ExecWait总是等待子进程,但有时子进程启动它的子进程而不等待它们。要等待NSIS卸载程序,您需要使用特殊的。\u?=参数采用$INSTDIR值,但每个版本的$INSTDIR不同,可能是因为此Exec没有等待卸载程序卸载。\u?=参数采用$INSTDIR值,但每个版本的$INSTDIR不同,可能是因为此Exec不存在正在等待卸载程序卸载。