电脑出现nsiserror怎么解决?NSIS如何执行外部程序?
电脑出现nsiserror怎么解决?
1.尝试清空浏览器缓存,在IE选项中,清空IE临时文件。或使用清理专家百宝箱,清除系统垃圾文件,实现这个功能。
2.尝试禁用任何下载加速器或下载工具,尝试使用IE另存为进行重新下载。
3.更新杀毒软件,并进行杀毒。出现NSIS错误,被感染型病毒破坏的可能性较大。推荐重启到带命令行的安全模式杀毒。
NSIS如何执行外部程序?
NSIS提供了比较完善的执行外部程序的接口,你可以用ExecWait 来执行一个程序直到外部程序执行完成才执行下一步操作,但执行命令行的程序有可能会出现黑框,在安装过程中出现黑框是我们封装者和用户都不愿意看到的情况,为此NSIS给我们提供了一个nsExec接口,它可以执行一个基于命令行的程序并且不输出一个黑框。当nsExec::ExecToStack执行失败的时候,它会返回一个"error"在栈顶,当它执行命令超时的时候它会返回一个“timeout”于栈顶,其他的情况它会返回程序的返回值。
具体的代码实现过程:
Name "nsExec Test"
SetCompressor /FINAL bzip2
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
NSIS简介:
NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序 *** 程序。它提供了安装、卸载、系统设置、文件解压缩等功能。这如其名字所指出的那样,NSIS 是通过它的脚本语言来描述安装程序的行为和逻辑的。NSIS 的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。