2012-08-27 144 views
0

作爲對象,我試圖執行Windows 8的兼容性測試:用Delphi XE或XE2編譯的任何應用程序未通過測試「Windows安全最佳實踐測試」,特別是測試「受攻擊面分析儀」,出現以下錯誤:德爾福Xe2和微軟應用程序認證套件

Weak ACL on MyExecutable.exe allows tampering by multiple non-administrator accounts.

File: MyExecutable.exe Writable by: Authenticated Users Rights: FILE_WRITE_ATTRIBUTES, FILE_WRITE_EA, FILE_APPEND_DATA, FILE_WRITE_DATA

我也試過用一個簡單的空項目,但我總是得到同樣的錯誤,這讓我獲得「與Windows 8兼容」的狀態。

任何人都可以幫助我嗎?

這些鏈接解釋一些事情: http://blogs.msdn.com/b/openspecification/archive/2010/04/01/about-the-access-mask-structure.aspx http://msdn.microsoft.com/library/windows/apps/hh750314.aspx#asa

問候 丹尼爾

+1

這似乎並沒有任何與編譯器或可執行文件。我建議在將應用程序放入「Program Files」後再次嘗試測試。 –

+1

@SertacAkyuz:是的,是真的。 –

回答

2

經過進一步調查和見解我已經確定問題不在於編譯器,而是在可執行文件上定義的acl。您可以通過各種工具,包括微軟的CACLS.EXE安裝後更改ACL(http://technet.microsoft.com/en-us/library/bb490872.aspx)

如:CACLS.EXE MYEXE.EXE/E/G「Everyone:R」只設置「讀取」和「讀取&執行」的權限給組「Everyone」

無論如何感謝所有人。

問候 丹尼爾