2017-09-28 2 views
0

Outlookで、選択したメッセージをアーカイブフォルダに移動し、メッセージのURLを取得するVBAマクロがあります。また、「Save to Evernote」アドインのようにEvernoteにメッセージを追加して、自動的にそのURLをメモのURLとしてメッセージに追加したいと考えています。Evernote SetSharedSessionConsumerKeyがOutlook VBAマクロで機能しない

私はEvernoteのクラウドSDKのCOMのセットアップダウンロード:私は、その後のために登録して、このアプリケーション(コンシューマー・キーとコンシューマー・シークレット)のための私のEvernote APIキーを受け取っ https://github.com/evernote/evernote-cloud-sdk-windows/tree/master/COM%20Setup

を。

私はサンドボックスにアカウントを持っています。

Evernote Cloud SDKへの参照を追加し、動作していることをテストするための簡単なコードを書きました。

ただし、SharedSession.IsAuthenticatedをチェックすると、次のコードが失敗します。

コード:

Public Sub CreateNote() 
    Const Key = "MY KEY" 
    Const Secret = "MY SECRET" 
    Const Host = "sandbox.evernote.com" 

    Dim evernoteSession As New ENSessionForCOM 
    Call evernoteSession.SetSharedSessionConsumerKey(Key, Secret, Host) 

    If evernoteSession.SharedSession.IsAuthenticated = False Then 
     evernoteSession.SharedSession.AuthenticateToEvernote 
    End If  
End Sub 

エラー:

Run-time error '-2147024809 (80070057)' 

Cannot create shared Evernote session without either a valid 
consumer key/secret pair, or a developer token set. 

私は多分私はあまりにもすぐにしようとしていたと思ったが、それはほとんど24時間となっています。私は間違って何をしていますか?

答えて

0

多くの試行錯誤の末、私はついに解決策を見つけました。 ENSessionForCOMの代わりにENSessionAdvancedForCOMオブジェクトを作成する必要がありました。コードは次のようになります。

Public Sub CreateNote() 
    Const Key = "MY KEY" 
    Const Secret = "MY SECRET" 
    Const Host = "sandbox.evernote.com" 

    Dim evernoteSession As New ENSessionAdvancedForCOM 
    Call evernoteSession.SetSharedSessionConsumerKey(Key, Secret, Host) 

    If evernoteSession.SharedSession.IsAuthenticated = False Then 
     evernoteSession.SharedSession.AuthenticateToEvernote 
    End If  
End Sub 

これで認証されました。

関連する問題