NSIS AccessControl::GrantOnFile权限失败

NSIS AccessControl::GrantOnFile权限失败,nsis,access-control,Nsis,Access Control,我正在尝试使用NSIS等创建并设置一个目录,如下所示: CreateDirectory "$APPDATA\${productName}" ; create fileResources directory CreateDirectory "$APPDATA\${productName}\fileResources" AccessControl::GrantOnFile "$APPDATA\${productName}\fileResources" "Everyone" "FullAccess"

我正在尝试使用NSIS等创建并设置一个目录,如下所示:

CreateDirectory "$APPDATA\${productName}"
; create fileResources directory
CreateDirectory "$APPDATA\${productName}\fileResources"
AccessControl::GrantOnFile "$APPDATA\${productName}\fileResources" "Everyone" "FullAccess"
Pop $0 ; get "Marker" or error msg
StrCmp $0 "Marker" Continue
MessageBox MB_OK|MB_ICONSTOP "Error setting access control for $APPDATA\${productName}\fileResources: $0"
Pop $0 ; pop "Marker"
Continue:
    Pop $0
我收到以下关于$0的回复,这是什么回复


我想让安装的程序可读写一个文件夹

我猜您正在使用NSIS v3构建一个Unicode安装程序,并且您在plugins子目录中放置了错误的插件,这就是结果的原因


要正确安装插件,您需要将ANSI.dll放在NSIS\Plugins\x86 ANSI中,将Unicode.dll放在NSIS\Plugins\x86 Unicode中。

我猜您正在使用NSIS v3构建Unicode安装程序,并且将错误的插件放在Plugins子目录中,这就是结果的原因


要正确安装插件,您需要将ANSI.dll放在NSIS\Plugins\x86 ANSI中,将Unicode.dll放在NSIS\Plugins\x86 Unicode中。

是否使用正确的插件?检查Ansi或Unicode-如果您使用了错误的响应字符集(如中文)。您是否使用了正确的插件?检查Ansi或Unicode-如果使用不正确的字符集,则响应字符集是错误的(如中文)。