Luna Labs
Luna Labs

LunaScriptSidebar::SetDataの挙動

rated by 0 users
この投稿: 4 回答 | 0 フォロー

投稿日時: 2009/6/30 14:31

LunaScriptSidebar::SetDataのリファレンスが修正されているのを見て思いつきました。

SetData、GetDataでCOMオブジェクトの引渡しが出来ると言うことなので、試しに
VBScript上で

Set Lunascape = CreateObject("Lunascape2.LunascapeAPI")

としてそれをSetDataで登録し、サイドバーに生成されるHTML内でGetDataしたところ、
サイドバーに生成されるHTML内に記述するスクリプトからLunascapeAPIの使用が
可能になりました。

以前に、Shiroicaさんが別の方法(LunascapeUtilityObjectAcquirer.js)で、LunascapeAPI
の使用方法を示してくれましたが、今回試した方法でも行けるようです。

これは、スクリプトサイドバープラグインの作成に大きな力となると思います。
リファレンスの修正を、こっそりするにはあまりに勿体無い内容だと思います。
具体的な使用例を併せた、解説が欲しい所です。

で、疑問なんですがSetDataで登録した値(オブジェクト)は、別スレッドで実行された関数では、
GetData出来ないのでしょうか?(何となく、感覚でものを言ってるので)ご教示お願い致します。

AO

Top 10 Contributor
Posts 2

AO:
で、疑問なんですがSetDataで登録した値(オブジェクト)は、別スレッドで実行された関数では、
GetData出来ないのでしょうか?(何となく、感覚でものを言ってるので)ご教示お願い致します。

GetDataは成功すると思いますが、例えば今回のドキュメント更新でbrowserオブジェクトにはアクセスできない旨の記述を追加したように、オブジェクトの種類によっては(特に複雑なもの)動作が保証できない場合もあります。公式ドキュメント上は確定した仕様しか掲載できませんので、もし実際に利用する中で面白い使い方ができるということであれば、今後このLuna Labsを含め、ユーザー様の参画できる場でぜひ発表して頂きたいと思います。

有難う御座います。

私の思い違いでした。

確かに、別スレッドでもGetDataが成功する事を確認しました。

AO

追記

試しに、別スレッドでLunascapeオブジェクトをGetDataしてみました。
取り合えず、使えるようです。

AO

Thank you very much.
|
ページ 1 / 1 (5 アイテム) | RSS
Copyright Lunascape Co., Ltd. All rights reserved.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems