Add-InExpressを使用したExcelAddIn、VS2010、cometd.netがcometdサーバーおよびTom catと通信RTDInitializeイベントハンドラーで、Tom Catにログインしてcometdサーバーに接続し、クラス資格情報のインスタンスを使用して、loggedOn(set IsLoggedOnをtrueに設定)およびsessionID。
トピックのRefreshDataハンドラーで、まだ登録していない場合は、cometdサーバーに登録します。次に、トピックをTomCatにサブスクライブします。これで、ユーザーがExcelからRTD関数を削除すると、DisconnectDataハンドラーが呼び出され、cometdサーバーから切断し、Tom Catからログアウトし、sessionIDをクリアします。次回、ユーザーがRTD関数を再度入力すると、RTDInitializeイベントハンドラーが呼び出され、IsLoggonedがtrueに設定され、sessionIDが更新された場所にログインして接続します。奇妙なことに、2回目のログイン後、refreshDataでクレデンシャルを確認すると、IsLoggedがfalseになり、最初のログアウト時と同じようにsessionIDが空になります。誰もが理由を知っていますか?はっきりさせたかどうかわからない。ありがとう