使用NSIS脚本将属性值移动到文本框中
我已经为我的java项目创建了nsi文件。我已经创建了一个文本框,并将其作为默认值提供。我的问题是运行exe文件时,它会显示带有默认值的文本框。如果用户希望修改文本框中的值,则应将其写入属性文件。我尝试了以下代码行使用NSIS脚本将属性值移动到文本框中,nsis,Nsis,我已经为我的java项目创建了nsi文件。我已经创建了一个文本框,并将其作为默认值提供。我的问题是运行exe文件时,它会显示带有默认值的文本框。如果用户希望修改文本框中的值,则应将其写入属性文件。我尝试了以下代码行 InstallOptions::dialog "$PLUGINSDIR\sample.ini" ReadINIStr $0 "$PLUGINSDIR\sample.ini" "Field 1" State ${ConfigWrite} "$INSTDIR\resou
InstallOptions::dialog "$PLUGINSDIR\sample.ini"
ReadINIStr $0 "$PLUGINSDIR\sample.ini" "Field 1" State
${ConfigWrite} "$INSTDIR\resource\conf.properties" "AGENT.HOST" "=$0" $R0
但是修改后的值将在属性文件中受到影响。我不知道为什么没有反映出来?有人能帮我吗?@sekt谢谢。安装时我修改了AGENT.HOST的值。但安装后我只看到了默认值。修改后的值还没有反映出来。我不知道y?@seki谢谢。我使用了Exec命令,然后工作正常。感谢您的支持。
!include LogicLib.nsh
!include TextFunc.nsh
Function pageConfig
InitPluginsDir
# For this example I generate the page directly with the precompiler, you probably want to use a real .ini file.
!tempfile SRCINI
!appendfile "${SRCINI}" "[Settings]$\nNumFields=1$\n"
!appendfile "${SRCINI}" "[Field 1]$\n"
!appendfile "${SRCINI}" "Type=Text$\n"
!appendfile "${SRCINI}" "Left=10$\nRight=100$\nTop=10$\nBottom=24"
File "/oname=$PluginsDir\cfgpage.ini" "${SRCINI}"
!delfile "${SRCINI}"
ClearErrors
${ConfigRead} "$INSTDIR\resource\conf.properties" "AGENT.HOST=" $0
${If} ${Errors}
StrCpy $0 "DefaultHost.com"
${EndIf}
WriteIniStr "$PluginsDir\cfgpage.ini" "Field 1" "State" $0
InstallOptions::dialog "$PluginsDir\cfgpage.ini"
Pop $0
FunctionEnd
Function pageLeaveConfig
ReadINIStr $0 "$PluginsDir\cfgpage.ini" "Field 1" State
${If} $0 == ""
MessageBox mb_iconstop "Please provide a host..."
Abort
${EndIf}
${ConfigWrite} "$INSTDIR\resource\conf.properties" "AGENT.HOST=" "$0" $1
FunctionEnd
Page custom pageConfig pageLeaveConfig