2013-05-09 53 views
0

我正在嘗試爲Outlook 2010創建VSTO插件,該插件將計算電子郵件附件的MD5和SHA1。如果我可以訪問該文件或者至少將其讀入內存,那麼計算它們並不是問題,Outlook沙箱訪問系統的方式正在困擾着我。使用VSTO在Outlook中使用附件

我試過將它存儲到System.IO.Path.GetTempPath,但它只是返回一個void。我被告知把它存儲到內存中也是不可能的。

參考了Attachment.SaveAsFile

http://msdn.microsoft.com/en-us/library/office/microsoft.office.interop.outlook.attachment.saveasfile(v=office.14).aspx

我努力不硬編碼存儲的每個文件,以C:\Temp由於對大文件的性能問題。有沒有人有從Outlook內使用附件的好方法?

回答

0

我通常將Outlook附件保存在我的應用程序目錄下的臨時目錄下。 然後,當我的應用程序關閉時,我清除此目錄。它避免了附件鎖定等問題。

private static string getAttachmentPath(Outlook.Attachment attachment) 
{ 
    var path = System.IO.Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), attachment.FileName); 
    attachment.SaveAsFile(path); 
    return path; 
} 
+0

我會稍後檢查一下,儘管目前我有我的要去c:\ temp。問題是我正在使用這個來查看潛在的惡意附件,所以存儲讓我有點尷尬。 – lordzero 2013-05-09 22:55:19

相關問題