executeFunctionリボンボタンでdialogApiを使用してダイアログを実行すると、executeFunctionイベントはOutlook for Windowsで完了しません。 マニフェストでは、関数 "x"を呼び出してダイアログをトリガし、イベントハンドラを追加します。OutlookアドインWindows用OutlookでExecuteFunctionリボンボタンが完了しない
function x(evt) { _event = evt; ...}
Office.context.ui.displayDialogAsync(settings, function (asyncResult) {
_dialog = asyncResult.dialog;
_dialog.addEventHandler(Office.EventType.DialogMessageReceived, messageHandler);
_dialog.addEventHandler(Office.EventType.DialogEventReceived, eventHandler);
})
function messageHandler() { _event.completed(); }
function eventHandler() { _event.completed(); }
更新:
1.マニフェストに、機能を実行するリボンボタンの定義があります。この関数は、リボンボタンクリックから渡されたイベントパラメータを受け入れ、ダイアログを開くためにOffice.context.ui.displayDialogAsync APIを呼び出します。イベントパラメータは、後でダイアログイベントハンドラで呼び出すことができるように、グローバル変数に保存されます。リボンボタンをクリックすると、ダイアログは正常に開きますが、ダイアログが閉じると、event.completedは呼び出されないようです。添付された画像は約10〜15分間実行されます。
2.コードスニペットは元の転記から添付されています。
3.使用されるプラットフォームは、Windows 11のIE 11およびEdgeを搭載したOutlook 2016です。
*異常な動作:デバッグの目的で、各イベントハンドラで任意の非同期要求がトリガされていました。 event.completedが呼び出される前に要求が行われると、イベントは正常に完了します。
こんにちはjchoi76!あなたの投稿に感謝します。あなたの問題をよりよく理解できるように、情報を追加してください: 1)問題を再現するための正確な手順を記述できますか? 2)ダイアログページ内で実行するコードを共有できますか? 3)使用しているWindows、Internet Explorer、Desktop Outlookのバージョンは? –