我想使用nsis installer
在C:ProgramData
文件夹中安装一些应用程序数据。我想避免硬编码,因为它可能不在C: drive
上。
文件https://nsis.sourceforge.io/Docs/Chapter4.html没有任何定义ProgramData
的常量。nsis
在ProgramData
文件夹中的安装方式是什么?
Microsoft移动并重命名了Vista中的一些特殊文件夹。%ProgramData%
是CSIDL_COMMON_APPDATA
,您可以在NSIS中获得该路径:
Section
SetShellVarContext all
MessageBox MB_OK "$LocalAppData"
SetOutPath "$LocalAppDataMyAppsData"
File /r mydata*.*
SectionEnd
您可以使用GetKnownFolderPath
:
GetKnownFolderPath $0 {62AB5D82-FDC1-4DC3-A9DD-070D1D495D97} ; FOLDERID_ProgramData
MessageBox MB_OK $0