簡體   English   中英

以編程方式打開高級安全設置對話框

[英]Programmatically open Advanced Security Settings dialog?

有沒有辦法以編程方式打開目錄/文件的高級安全設置對話框? 這是我要打開的對話框:

高級安全對話框

通過單擊目錄/文件的“安全屬性”對話框中的“高級”按鈕打開它。

安全屬性

這個答案顯示了如何使用ShellExecuteEx打開安全屬性選項卡,因此可能有不同的參數可用於直接打開高級安全設置對話框,但我不知道在哪里可以找到文檔(或在哪里查看在注冊表中)支持的動詞/參數。

還有EditSecurityAdvanced API,但看起來需要實現獲取/設置ACL的功能,而不是使用內置於Windows shell的功能。

我正在使用VB.NET,但可以根據需要翻譯C#或Windows API調用,並且我們也會感激指導如何進行自己的研究。

我也找不到打開它的直接方法。 使用Visual Vincent建議的評論員這樣的自動化並不太難。 不要忘記添加對程序集的引用並導入System.Windows.Automation

然后此代碼應按下“ Advanced按鈕。 這種方式仍然會創建主要屬性對話框。

Dim FileName As String = "The file name you are viewing the properties of"
Dim AE As AutomationElement = AutomationElement.RootElement.FindFirst(TreeScope.Children, New PropertyCondition(AutomationElement.NameProperty, FileName + " Properties"))
Dim Advancedbtn = AE.FindFirst(TreeScope.Element Or TreeScope.Descendants, New PropertyCondition(AutomationElement.NameProperty, "Advanced"))
TryCast(Advancedbtn.GetCurrentPattern(InvokePattern.Pattern), InvokePattern).Invoke()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM