巧用NSIS接口执行外部程序
作者:本站整理 时间:2015-02-06
对于外部程序在运行过程中出现的黑框问题,其实我们通过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
相关文章
相关推荐
-
网易七鱼官方版 v1.0.9
-
LangOver 5.0.52(文本翻译程序)
-
Adobe Bridge CC 2017 mac版
-
YY歪歪语音2016官方正式版
-
啄木鸟图片下载器 5.7.37.0(网络图片下载大师)
-
CPUZ免费中文版v1.85.0
-
Apowersoft录屏王中文版 v2.1.9
-
安易硬盘数据恢复软件 6.7(安易恢复工具)
-
Hard Disk Sentinel Professional (硬盘监控软件) V4.50 多国
-
VMware Player官方版 V12.5.1
-
UltraEdit 32位中文绿色版 v24.0.0.56
-
会声会影X7 32位简体中文版
-
云之家官方版
-
夜猫台球直播平台 V1.0.2157.211官方版(台球赛事直播)
-
Windows7简易优化工具V1.01绿色版(Windows7 Master)
-
LibreOffice正式版 v5.3.0