1

別のメールの内容を使用してメールを再作成する機能があります (Outlook Redemption ライブラリを使用)。アーリー バインディングへの変換はほぼ完了しましたが (vb.net で Option Strict ON を使用しています)、Visual Studio 2010 では .save および .move の行に下線が引かれ、「option strict on では遅延バインディングが許可されません」というエラーが表示されます。

コードは次のとおりです。

'Use Redemption Library function to re-create email
    Dim sItem As Redemption.SafeMailItem
    Dim oItem As Object

    sItem = New Redemption.SafeMailItem
    oItem = myOlApp.Session.GetSharedDefaultFolder(myRecipient, Outlook.OlDefaultFolders.olFolderDrafts).Items.Add(Outlook.OlItemType.olMailItem)

    With sItem
        .Item = oItem
        .Import(tempfilepath, 3)  'olMSG, olRFC822 and olTNEF formats are supported
        .Save()
        .Move(myolfolder)
    End With

他の遅延バインディング エラーを解決したので、2 つのメソッドが問題としてフラグを立てている理由がわかりません。

ルイスを助ける

4

1 に答える 1

0

SafeMailItem は Outlook によってブロックされたプロパティとメソッドを実装しているため、このエラーが発生します。
Save と Move はブロックされていないため、SafeMailItem はそれらを実装しませんが、遅延バインディングを使用しているときにそれらを通過させるのに十分スマートです。元の Outlook アイテムを使用してこれらのメソッドを呼び出します。

With sItem
        .Item = oItem
        .Import(tempfilepath, 3)  'olMSG, olRFC822 and olTNEF formats are supported
        oItem.Save()
        oItem.Move(myolfolder)
    End With
于 2013-02-12T16:14:49.900 に答える