safearrayキライ

Windows7になっても、未だにCOMというインターフェースを触る機会が時々ある。
WSHで触るのがお約束だと思うが、ときどき、そうはいかないCOMコンポーネントにお目にかかる。
これがまた困ってて、未だにSAFEARRAYで参照渡しとかされると、JScript(WSH)でどうやって受け取ればいいのかサッパリわからなくて、仕方なく、VBか、VC++か(C#はわかんない)と、考えてVBはイヤだと思ってVC++を手にとってしまう。そして、数分後に間違いに気がつく。駄目だ。正解はVBだった。実は知ってた。でも、もう途中まで書いてしまった。引くに引けない。
BSTRとか、SAFEARRAYとか、VARIANTとか、簡単にできそうな事を敢えて挑戦的なほどに難しくしているように見える。例えるなら賽の河原で東京スカイツリーを作ろうとするような感じといえば分かってもらえるだろうか。
何度か心が折れそうになり、「大丈夫なはずだ、たぶん、頑張ればなんとかなるはず、ちゃんと設計すれば大丈夫なはず、いや、ちゃんと設計されているはずだから大丈夫なはず」そう何度も自分を奮い立たせてコンパイラと戦うことになる。
とはいえ、何度触ってもsafearrayを触るのはイヤだ。多分、自分の能力的な問題もあるんだろうな。