1

私たちの Web アプリケーションでは、クライアントは参照として .msg (outlook 電子メール) を添付するために使用されます。

私がやろうとしているのは、.msgファイルのhtml本文を.aspxページに表示することです

以下のコードは VS 2010 IDE で正常に動作していますが、同じマシンにデプロイすると次のエラーが発生します。

私を助けてください

   Public Shared Function GetMessageHTML(ByVal MsgPath As String) As String

    Dim app As Microsoft.Office.Interop.Outlook.Application = Nothing
    Dim session As Microsoft.Office.Interop.Outlook.NameSpace = Nothing
    Dim mail As Microsoft.Office.Interop.Outlook.MailItem = Nothing
    Dim HtmlBody As String = String.Empty
    Dim NewHTMLBody As String = String.Empty

    Try
        app = New Microsoft.Office.Interop.Outlook.Application()
        session = app.Session
        mail = DirectCast(session.OpenSharedItem(MsgPath.Trim()), Microsoft.Office.Interop.Outlook.MailItem)
        HtmlBody = mail.HTMLBody

        TryCast(mail, Microsoft.Office.Interop.Outlook._MailItem).Close(Microsoft.Office.Interop.Outlook.OlInspectorClose.olDiscard)

        TryCast(app, Microsoft.Office.Interop.Outlook._Application).Quit()
        Try
            My.Computer.FileSystem.WriteAllText(HtmlFName, NewHTMLBody, False)
        Catch ex As Exception
            Return "File Write Exception " & ex.Message
        End Try

    Catch ex As System.Exception
        Return "Read Exception " & ex.Message
    Finally
        If mail IsNot Nothing Then
            System.Runtime.InteropServices.Marshal.FinalReleaseComObject(mail)
        End If
        If session IsNot Nothing Then
            System.Runtime.InteropServices.Marshal.FinalReleaseComObject(session)
        End If
        If app IsNot Nothing Then
            System.Runtime.InteropServices.Marshal.FinalReleaseComObject(app)
        End If
    End Try

    Return HtmlFName
End Function

上記のコードは .msg ファイルを読み取り、html 本文のコンテンツを新しい .html ファイルに保存してから、その新しい html を IFrame に表示しています。

VS 2010 で Windows 7 を使用しており、開発環境では完全に動作しますが、localhost (同じマシン) で公開すると、以下のエラーが発生します。

エラー

この問題を解決する方法を教えてもらえますか? ユーザー IIS_IUSRS に物理フォルダーに対する完全なアクセス許可を与えました

4

0 に答える 0