ご利用前に必ずお読みください
> ご返信ありがとうございます。 > > > QuickJSは楽しみですが、ゆっくりとお待ちしていますね。 > > いや~、なかなか大変なことになっていますね…。なんとか進めてはいるものの、新たな壁が現れてしまいました…😇 > > 以前のこの発言ですが、 > > > 変数の受け渡しはTagプロパティを使うくらいしか手がなさそうです😅 > > Tag プロパティの仕様はすっかり忘れていて、「まあ、なんでも入れられる万能プロパティでしょ?」くらいに思っていたのですが、いざソースコードを見てみたら衝撃。 > > `Scripting.Dictionary`を使ってるじゃないですか。 > > これって ActiveX オブジェクトなので、QuickJS とは互換性がなく、Tag プロパティ経由での変数のやりとりはできませんでした🙇♂️ > > しかも、QuickJS の変数はそもそも COM 規格とはまったく別の仕組みなので、仮に Tag が使えたとしても、受け渡し自体がかなり厳しそうです。 > > ただ、問題はそこではなく… ActiveX オブジェクトの存在。 > > `Scripting.Dictionary`はおそらく VBScript のコンポーネントなので、VBScript が廃止されたら、Tag プロパティ自体が使えなくなるかもしれません…😱 > > そこで、とりあえずの妥協案として考えたのが、`TagString`というシンプルな文字列型のプロパティを追加する方法です。 > > 従来の`Tag`は`Dictionary`型で、`キー + 自由な型 (Variant)`の組み合わせで、文字列・数値・配列・オブジェクトなど、何でも格納できました。 > > でも、`Dictionary`型や配列、オブジェクトは QuickJS との互換性がないんですよね… > > そこで、 > > - `Tag`プロパティは ActiveX が廃止されるまでは下位互換として残す > - 新しく`TagString`プロパティを追加して、シンプルな文字列型のみを扱うようにする > > こうすれば、文字列型であれば V8 や QuickJS との互換性も確保できます。もし配列を保存したい場合は、JSON.stringify して保存・取得すれば OK です。 > > ただ、問題点として… > > - 既存のマクロとの互換性が失われる > - シンプルな文字列型だと、他のユーザーが作成したマクロに上書きされる可能性がある > > 特に後者が悩ましいんですよね… > > `Scripting.Dictionary`を採用した理由の一つは、Tag プロパティが自由に書き換えられることで、他のマクロによって意図せず上書きされるリスクを防ぐためでした。 > > 【参考】マクロ用の変数の要望 > https://www.haijin-boys.com/discussions/3418 > > その点を考えると、`TagString`のような自由に書き換え可能なプロパティは、当初のポリシーに反してしまいます。 > > とはいえ、VBScript が廃止されて Tag プロパティが使えなくなるとなると、QuickJS との受け渡し以前に、代替手段を考えないといけない状況です… > > できれば、QuickJS と互換性があり、さらに既存のマクロの書き換えも最小限に抑えられる方法があればいいのですが🫠
マークダウンを有効にする
テキストエディター「Mery」ベータ版 v3.8.8 を公開
ヨーグルトメーカーで作った R-1 ヨーグルトで強さを引き出してみた
テキストエディター「Mery」の配色テーマ集
テキストエディター「Mery」ベータ版 Ver 2.6.9 を公開、自動保存機能、バックアップ機能を搭載
知っておくと便利なテキストエディター「Mery」の 10 個の小技
リズム天国 ミラクルスターズ -Switch
リズム天国 ミラクルスターズ|オンラインコード版
トモダチコレクション わくわく生活 -Switch
ニンテンドープリペイド番号 9000円|オンラインコード版
Pokémon GO Plus +(ポケモン ゴー プラスプラス) (【Amazon.co.jp限定】オ…
嘆きの亡霊は引退したい ~最弱ハンターによる最強パーティ育成術~ 14 (GC…
Dジェネシス ダンジョンが出来て3年 11
異世界のんびり農家 21
鍛冶屋ではじめる異世界スローライフ 14 (カドカワBOOKS)
ようこそ実力至上主義の教室へ 3年生編4 (MF文庫J)