2014-02-25 47 views
0

我運行此VBScript中HTA應用程序中:崩潰當用戶點擊DENY

Sub CustomMailMessage() 
    Set objOutlook = CreateObject("Outlook.Application") 
    Set objMail = objOutlook.CreateItem(0) 
    objMail.Recipients.Add("[email protected]") ' crashing here if deny 
    objMail.Subject = UCase("Phone Correction") 
    objMail.HTMLBody = GenerateEmailBody 
    objMail.Body = "My New Number Is: " 
    objMail.Display 
    Set WshShell = CreateObject("WScript.Shell") 
    WshShell.SendKeys "^+{END}", True 
    WshShell.SendKeys "{END}", True 
    Set OutApp = Nothing 
End Sub 

則會彈出要求用戶點擊ALLOWDENY

如果點擊了ALLOW,我的腳本就可以工作。如果點擊DENY,則崩潰。

有沒有辦法做到下列之一:

  1. 不會崩潰並退出優雅。
  2. 抑制Outlook警告並創建消息(首選)。

所有的郵件客戶端的Outlook 2010在Windows XP或Windows 7。

+0

使用[CDO](http://stackoverflow.com/a/17425519/1630171)而不是Outlook。 –

+0

我們需要記錄郵件是從他們的帳戶發送的文件夾中發送的。 –

回答

1

您需要安裝任何軟件anvirus的先進的最新版本(如果你能控制客戶端環境)或運行繞過Outlook對象模型(例如使用Redemption)。

請參閱http://www.outlookcode.com/article.aspx?id=52供您選擇。

+0

已經使用Symantec(企業版)。由於它是從服務器管理的,因此無法更改設置。是否需要在每個將使用HTA應用程序的客戶端上安裝Redemption? –

+0

是的,需要在代碼執行的機器上安裝兌換。 –