7
簽署我有一個VB.Net/C#應用程序編程:你怎麼知道編程如果Word宏從VB.Net/C#
- 創建一個RTF文檔
- 打開它在微軟字
- 運行中存在的Word模板使用這樣的代碼了Word宏:
代碼:
Protected mobjWordApp As Word.Application = Nothing
'
' lots more code snipped for clarity
'
With mobjWordApp.Dialogs.Item(Word.WdWordDialog.wdDialogToolsMacro)
.Name = MacroName
.Run = True
.Execute()
End With
多年來,這工作愉快。
我現在有一個新的要求;我的應用程序只需要運行SIGNED Word Macros。
這是很容易在Word用戶界面做的,具體如下:
File > Options > Trust center > Macro Settings
Select "Disable all macros except digitally signed macros"
一旦設置,如果運行Word的人顯示宏對話框,任何未簽名(或未簽名但未受信任的)宏未列出。這完全如我所料。
但是,我打開Word應用程序的VB.Net代碼可以繞過這一點。當我運行這段代碼就會運行未簽名的宏:
With mobjWordApp.Dialogs.Item(Word.WdWordDialog.wdDialogToolsMacro)
.Name = MacroName
.Run = True
.Execute()
End With
我需要知道的是:
是否有我的代碼,以確定如果宏我之前簽署(和信任)的方式運行?
什麼版本的Word文檔嗎? doc或docx? – 2012-03-15 23:43:57
G'day Micah,我們使用.dotm和.doc文件運行Word 2007(32位) – 2012-03-15 23:46:21