Установка разрешений для папок с помощью NSIS - PullRequest
2 голосов
/ 15 декабря 2011

Я пытаюсь установить разрешение на открытие папки (т. Е. Каждый имеет полный доступ), используя NSIS с плагином RunAsW, который вызывает cscript.exe с повышенными правами пользователя.

Как указано ниже:

Function ReplaceEXE

ClearErrors

SetOutPath '$TEMP'
File 'RunAs.dll'

File 'C:\WINDOWS\system32\cscript.exe'

StrCpy $1 "adminaccount"
StrCpy $2 "!adminpassword"
StrCpy $3 '"$TEMP\C:\WINDOWS\system32\cscript.exe" //Nologo XCACLS.vbs    "C:\OpenAccessFolder" /F /T /E /G Everyone:M'
StrCpy $4 0

System::Call 'RunAs::RunAsW(w r1,w r2,w r3,*w .r4) i .r0 ? u'

DetailPrint "Permissions have been edited correctly"
DetailPrint "End installation"

FunctionEnd

1 Ответ

5 голосов
/ 15 декабря 2011

Вы должны использовать плагин AccessControl для установки разрешений в NSIS.

Если вам нужны права администратора , вам следует запросить об этом при запуске установщика ...

...