2009-09-30 109 views
4

是否有任何其他方式擺脫這種外觀安全信息? 「一個程序試圖自動發送電子郵件......等等」,它給了我一個選項來選擇是,沒有&幫助。展望安全

我目前正在開發一個使用Ms Access的Outlook自動化應用程序。每次我發出發送命令這個消息彈出窗口,我嘗試使用SendKeys「%s」,但它在Access 2007中不起作用。

有沒有其他解決方案呢?謝謝!!

回答

0

通過谷歌搜索只是您的Outlook老馬消息中找到此link,看起來應該解決您的問題

+0

感謝Kimvais的鏈接。但看起來像第三方實用程序或東西..有沒有我可以用來解決這個問題的任何MS Access命令/函數? – Arnold 2009-09-30 07:31:17

+0

不!沒有MS Access命令\函數來解決問題! – 2009-09-30 09:03:24

0

您可以通過直接中繼發送到SMTP服務器,而不是使用Outlook來將消息中繼避免這種情況。安全警告旨在阻止像您這樣的人在我不知情的情況下從我的帳戶發送消息。雖然你的意圖很好,但你寫的基本上是類似於病毒的(想象一下,如果你沒有安全提示就可以做到這一點 - 垃圾郵件天堂!)

+0

但是,如果您直接轉到SMTP,您的Outlook發送的郵件文件夾將不包含該郵件的副本。 – 2009-10-02 02:34:08

+0

確切地說 - 我們不希望應用程序或腳本混淆我們的東西。想象一下,如果他們允許這種類型的腳本,那麼可能性就會存在。 – Fenton 2009-10-02 08:05:33

3

微軟不希望腳本能夠發送電子郵件沒有用戶的同意。據KB 263084,您可以執行下列操作之一(這避免了編寫腳本的界面或系統配置來說,攔截的消息):

  • 改變某些Exchange Server設置
  • 使用CDO
  • 使用擴展MAPI
  • 使用COM加載

我不認爲任何的編程解決方案是特別簡單的,並且將更改應用到交易可能不適合您的解決方案(especi當然,如果您的應用程序應該與不在Exchange環境中的Outlook客戶端一起使用)。

+0

當然,在獨立的Access場景中(即不作爲Exchange客戶端運行),更改Exchange設置不是一種選擇。 – 2009-10-02 02:33:17

+0

CDO不會將郵件的副本放入Outlook發送的郵件文件夾中。由於Microsoft修補MAPI DLL的方式,擴展MAPI非常困難 - 有些Outlook安裝永遠無法使用(通常在安裝其他電子郵件程序的地方安裝它們自己的MAPI DLL版本)。我使用Outlook Redemption並認爲它很好。 – 2009-10-02 02:35:37

+0

我同意這些選項不是很好,當然也不簡單。我不熟悉Outlook Redemption,但是快速瀏覽了網站 - 它看起來像是一個非常好的選項(它似乎避免了安全消息本質上是擴展MAPI的包裝)。 – 2009-10-02 14:16:51

6

您不妨考慮Outlook Redemption

從導語:

展望贖回工作解決由Outlook安全修補程序和MS Office 98/2000的Service Pack 2和辦公室所施加的限制2003分之2002/ 2007(其中包括安全修補程序),並提供了許多對象和函數以處理未通過Outlook對象模型公開的屬性和功能。

0

如果你不想使用贖回(其他人已經提供了,所以我認爲你不這樣做),你還有另一個選擇,我可以保證會實施更多的痛苦。 基本上你需要做的是創建一個加載項,而不是外部程序。外接程序能夠做任何你想要的Outlook,而不會收到這些消息。 您可以使外接程序像一個簡單的服務器一樣 - 通過接收來自外部世界的命令(如果您無法在Outlook中執行任何操作)執行所需的操作。 也許你可以解除WCF服務(IPC或Inter Process Communication,它像兩個進程之間的共享內存那樣工作)。 但請注意,如果您只是使用Redemption或只是一個加載項,您可能會更好。 將Outlook與外部進程連接是一件痛苦的事情,並且由於Outlook類不可序列化而變得更糟。所以基本上你需要爲你需要通過你的應用程序訪問的每個類添加數據傳輸對象。

也許如果你解決這個問題,它會容易實現,但它仍然是一個挑戰。