!!!プラグインIDからUUIDへ Shade7.5SDKまでは、プラグインIDはイーフロンティアで デベロッパID(ユーザごとに割り振られます)をもらい、それを 元にプラグインIDを作ってました。 Shade8SDK以降は「'''UUID'''」というものでプラグインを識別するように なりました。 「UUID」とは世界で唯一の128ビットのIDです。誰かのIDとだぶることは ないので、オブジェクト(アプリケーションの一部品)を識別したりするのにも 使われます。 Shadeでは、個々のプラグインを識別するのに使われるわけですね。 じゃあ、なぜ誰ともぶつからないのでしょうか? おそらくですが、ハードごとにユニークであるネットワークのMACアドレスや 経過時間などを元にUUIDを自動生成していると思われます。 以下のような文字列の羅列で表現されます。 77dc0269-ac76-4617-8ef6-32cbcc547afd !!UUIDを取得しよう もちろん、WinとMacで求めかたは違います。 Shadeだけでなく、他のプログラムでも使えますので覚えておいて損はないです。 プラグインSDKのドキュメントに求め方が書いているのですが、 私はコマンドラインで求めるほうが好きなのでそのやり方を。 !Windowsの場合 DOSプロンプトにて「VisualStudio .NET 2003」の「Common7\Tools\Bin」を カレントにします。 dirしていただければ「uuidgen.exe」というのが見つかります。 これを実行すると、文字列が出力されます。 これです。 !Macintosh(OSX)の場合 [アプリケーション]-[ユーティリティ]内に「ターミナル」実行ファイルがありますので、これをダブルクリックしてください。 OSXでのプロンプトに相当する「ターミナル」が起動します。 後はWindowsと同じです。「uuidgen」を実行すると、UUIDが出力されます。 これをコピー&ペーストして利用します。 ついでです。Shadeとは関係ないLinuxでも(笑)。 !Linuxの場合 OSXのターミナルで、という作業で察しはつくと思いますが、 実はUNIX系では標準で「uuidgen」というコマンドが存在しています。 コマンドラインで「uuidgen」を実行すると、同じくUUIDを取得することができます。 OSX/Linux(RedHat9)は、双方とも「/usr/bin」内にありますね。 !!ShadeプラグインでのUUIDの利用 で、取得したUUIDをプラグインに指定することになるのですが、 uuid_class("77dc0269-ac76-4617-8ef6-32cbcc547afd") のようにして指定してます。SDKにはサンプルソースもありますので これを見ると、「uuid_class」を返す部分(各インターフェースのget_uuid関数、グローバル関数のget_uuidなど)でこのUUIDを返してあげるとよい、ということが 分かります。 簡単に言うと、Shade7.5以前でプラグインIDを返していた部分(get_id)が、UUIDを 返すようになった(get_uuid)と置き換えてしまってもいいかもしれませんね。 ただ、もちろんこの変更で関数名が変わっているため注意です。 現在のShade8プラグインSDKでは、古いプラグインIDの指定手段も生きています。 しかし、いずれ消えゆく運命にあると想像していますので、UUIDに切り替えていくほうがいいでしょうね(デベロッパIDの登録も不要なわけですし)。