现在我正在使用NSIS创建安装程序。在我的一个自定义页面中,我创建了多行文本框并从读取文本文件中加载内容。页面加载时工作正常...但导航到下一页后,我刚刚点击了后退按钮..加载页面时只显示Mulitline文本框而不显示内容。然后再次从当前页面单击返回按钮,单击下一步按钮后,页面将加载内容。这不仅适用于单击后退按钮..我不知道为什么会发生这种情况..有谁能帮我弄清楚问题?
以下是我的自定义页面功能
Function PrePage
; Set dialog text:
!insertmacro MUI_HEADER_TEXT "$(RELEASENOTEDIA_TITLE)" "RELEASENOTEDIA_SUBTITLE"
nsDialogs::Create 1018
Pop $dialog
FileOpen $4 "$path\PreRequisite.txt" r
StrCpy $3 ""
loop:
FileRead $4 $1
StrCpy $3 "$3$1" ; append the line and copy it to another variable
IfErrors +1 loop
FileClose $4
nsDialogs::CreateControl EDIT \
"${__NSD_Text_STYLE}|${WS_VSCROLL}|${ES_READONLY}|${WS_HSCROLL}|${ES_MULTILINE}|${ES_WANTRETURN}" \
"${__NSD_Text_EXSTYLE}" \
0 10% 100% 90% \
"$3"
Pop $hwnd
nsDialogs::Show
FunctionEnd
答案 0 :(得分:0)
对我来说工作正常,可能会改变另一页上的$ path吗?
在FileOpen之后添加MessageBox mb_ok handle=$4,path=$path
,$ 4应不为“”或0 ...