Начиная с Vista %ALLUSERSPROFILE%
- %SystemDrive%\ProgramData
.Некоторые вещи, которые раньше были под All Users
, были перемещены в %Public%
, а остальные - в %ProgramData%
.
. Папка %Public%
содержит папки для общих документов, изображений, музыки и видео.,Вы можете получить к ним доступ в NSIS, переключившись на «весь контекст»:
SetShellVarContext All
DetailPrint $Documents
DetailPrint $Pictures
DetailPrint $Music
DetailPrint $Videos
NSIS не предоставляет прямой доступ к папке %Public%
, и это не место, где выдолжны устанавливать приложения!
Путь %Public%
следует использовать только в том случае, если вы изобрели новый тип папки, который имеет смысл показывать и совместно использовать нескольким пользователям:
!include LogicLib.nsh
Section
!define /IfNDef FOLDERID_Public {DFDF76A2-C82A-4D63-906A-5644AC457385}
System::Call 'SHELL32::SHGetKnownFolderPath(g"${FOLDERID_Public}",i0x1000,p0,*p.r1)i.r0'
${If} $0 = 0
System::Call '*$1(&w${NSIS_MAX_STRLEN}.r0)'
System::Call 'OLE32::CoTaskMemFree(pr1)'
DetailPrint "FOLDERID_Public=$0"
${Else}
DetailPrint "FOLDERID_Public does not exist on < Vista"
${EndIf}
SectionEnd