2013-02-19 62 views
1

我创建了一个NSIS安装程序,其中应用程序的名称取自.INI文件(因为它将用于多个应用程序,所以它应该是这样的)。NSIS卸载程序 - 应用程序名称丢失(动态设置)

Name $APP_NAME 
.... 
Function .onInit 
    ReadINIStr $R3 ${TECHPUB_INI_FILE} "General" "Installer_name" 
    StrCpy $APP_NAME $R3 
.... 
FunctionEnd 
.... 
Section install 
.... 
WriteUninstaller $INSTDIR\Uninstall.exe 
.... 
SectionEnd 

应用程序名称在安装程序中正确显示,它是.INI文件中的应用程序名称。当我卸载应用程序时,名称丢失。

http://i48.tinypic.com/1934w9.png

其他一切作品(卸载删除所有它删除)。任何想法如何解决这个问题? 谢谢!

回答

0

卸载程序的init函数是一个单独的un.onInit函数。请参阅Uninstall Callbacks

+0

它指向$ EXEDIR:!定义TECHPUB_INI_FILE“$ EXEDIR \ common \ Installer.ini”,因为.INI文件将在安装介质上。不知道如何指出它(似乎没有其他工作) – 2013-02-19 15:28:15

+0

保存!谢谢!添加了ReadINIStr $ R3“$ INSTDIR \ common \ Installer.ini”“General”“Installer_name” StrCpy $ APP_NAME $ R3 to un.onInit,它一切正常! – 2013-02-19 15:35:37

相关问题