Softgate Limited

株式会社ソフトゲート コーポレートブログ

DLL 関数の呼び出しが(おそらく)なんかおかしい

今日は、先日受けたご依頼のため、ビルド 610 用にインジケータと DLL を移植というかほぼ作り直しする作業をしていました。

その中で、DLL 側に実装された関数(wchar_t ポインタを二つ引数にとる)に、string 型の引数 A と B の二つを渡そうとしたのですが、なぜか DLL 側では、どちらも同じ文字列(A の内容)になってしまうという現象が発生しました。

実験のために、きわめて簡単なスクリプトで同じ関数を呼び出すと、そのときはうまく異なる文字列が渡るようなので、特定の条件下でしか発生しない現象なのかもしれません。

やっぱり、600 系はいろいろ問題が残っている上に、問題の一覧なんかも綺麗にまとまっていないので、場合によってはかなりハマる可能性がありますね。

原因を究明しようかとも思ったのですが、ちょっと今はそこに時間をかけている暇が無いので、そのうち思い出したら解析してみるつもりです。

というわけで、簡単な近況報告まで。