电子技术学习网 编程教程 NSIS执行外部程序(nsis 调用外部dll)(46秒前已更新2022)

NSIS执行外部程序(nsis 调用外部dll)(46秒前已更新2022)

本文是关于【NSIS执行外部程序】的内容,对于编程知识来说,每天了解最新的编程知识,是每天必须要做的,掌握最新编程,了解最新教程,投入最新动力来展现以后。

NSIS提供了比较完善的执行外部程序的接口,比如你要找开一个网页可以使用ExecShello Open "http://rkxy.com.cn"来执行一个网页的打开操作,你也可以用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执行外部程序,更多相关编程教程请关注电子技术学习网站!

上一篇
下一篇
返回顶部