Windows installer 使用NSIS安装在ProgramData文件夹中

Windows installer 使用NSIS安装在ProgramData文件夹中,windows-installer,nsis,Windows Installer,Nsis,我想使用nsis installer在C:\ProgramData文件夹中安装一些应用程序数据。我希望避免硬编码,因为它可能不在C:drive上 文档中没有任何定义ProgramData的常量。在ProgramData文件夹中安装nsis的方法是什么?Microsoft移动并重命名了Vista中的一些特殊文件夹%ProgramData%是,您可以在NSIS中获得该路径: Section SetShellVarContext all MessageBox MB_OK "$LocalAppData"

我想使用
nsis installer
C:\ProgramData
文件夹中安装一些应用程序数据。我希望避免硬编码,因为它可能不在
C:drive


文档中没有任何定义
ProgramData
的常量。在
ProgramData
文件夹中安装nsis的方法是什么?

Microsoft移动并重命名了Vista中的一些特殊文件夹<代码>%ProgramData%是,您可以在NSIS中获得该路径:

Section
SetShellVarContext all
MessageBox MB_OK "$LocalAppData"
SetOutPath "$LocalAppData\MyAppsData" 
File /r mydata\*.*
SectionEnd

SetShellVarContext是仅适用于节本身还是全局性的?@smile4它是全局性的,并且持续到您再次更改它为止。理想情况下,你只需把它设置好。如果为单个用户安装,则将其设置为“当前”,如果安装到$ProgramFiles,则将其设置为“全部”。