首页 新闻 搜索 专区 学院

初学NSIS请求大家帮个忙,就是在OutFile的时候生成一个EXE,用临时变量为什么不显示

0
悬赏园豆:80 [待解决问题]

!define PRODUCT_NAME "TestSetup"
!define PRODUCT_VERSION "1.0"
!define PRODUCT_WEB_SITE "www.baidu.com"
!define PRODUCT_PATH "..\Test"
!include "MUI.nsh"
!include "TextFunc.nsh"
!include "Logiclib.nsh"
;!define MUI_ICON "${PRODUCT_PATH}\Install.ico"

Page license
Page directory
!insertmacro MUI_PAGE_INSTFILES

Function .onInit
 ${LineRead} "${PRODUCT_PATH}\Version.ini" "-1" $R0
 POP $R0
FunctionEnd

Name "${PRODUCT_NAME}$R0"
OutFile "D:\My Work\${PRODUCT_NAME}$R0.exe"
InstallDir "D:\My Work"

----------------------------------------------------------------------------------

这是前面的部分,就是我读取一个ini文件的某一行,然后让他生成一个安装程序,可是临时变量$R0在Name中能显示,在OutFile却没有用,能告诉我这是为什么么

zhangya0631的主页 zhangya0631 | 初学一级 | 园豆:122
提问于:2012-07-25 09:43
< >
分享
所有回答(2)
0

我也试验过,行不通。我理解的原因是文件名是在编译时确认的,而R0是在运行才有确定值,晚于编译

可以用宏实现,外部读ini文件中内容,然后在makensis时作为宏传入即可。

kevinzhwl | 园豆:304 (菜鸟二级) | 2012-07-26 10:43
0

麻烦问下,你这个问题解决了吗?我现在遇到同样的问题了。怎么解决?

heavi | 园豆:195 (初学一级) | 2012-08-14 19:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册