我在Windows操作系統上編寫NSIS腳本以在安裝時創建共享目錄。這裏是我的代碼,在英語Windows效果很好,但對法國的Windows不能正常工作7.「網絡共享」在法語Windows操作系統上不起作用
CreateDirectory C:\tmpShare
nsExec::Exec 'icacls C:\tmpShare /grant *S-1-1-0:(OI)(CI)F'
nsExec::Exec 'net share "tmpShare"="C:\tmpShare" /grant:Everyone,full /remark:"Temp shared folder"'
原因:法國OS不理解net share命令的用戶名字符串「大家」,將其轉換爲'tout le monde'用法語。
我嘗試使用'Everyone'的安全ID,即* S-1-1-0而不是字符串'Everyone',但它不能與網絡共享 (BAD DESIGN OF WINDOWS,icacls雖然可以使用它)
我試過用「Tout de monde」而不是'Everyone'來解決問題,現在的問題是如何編寫我的NSIS腳本,哪個平臺獨立?
你需要在每次調用nsExec :: Exec的 – Anders
後彈出它不是一個「糟糕的設計」,你只是用它錯誤。 「net share」命令旨在用於最終用戶或系統管理員的交互式使用,不能用於安裝人員。 *你應該使用API。 –