2016/03/29

ATL/WTLのソースを、Visual Studio 2015 でビルドしてWindows xpでエラーにならないようにする

マニアックな需要ですか?(^_^;)
新山(へろぱ)のホームページが、ホスティングしていたプロバイダーの都合で無くなってしまったので、やむなくGoogle siteに自作ソフトウェアを置いているのですが、中のドキュメントとかの見直しをしなければ、と暇なときにドキュメント直したりソースをビルドし直したりしています。

新山(へろぱ)的優先度として、窓の杜様にも転載されているUnAceV2J.DLLのドキュメントを直すとして、せっかくなのでDLL本体もVisual Studio 2015でビルドし直そうと考えた次第です。
 WTLを使用しているので、Visual Studio 2015に対応したWTL待ちでしたが、それもリリースされていますので問題なし。
Visual C/C++ 2015もWindows xpをターゲットとしてコンパイルできるようになっています。

なのに、Windows xpで動作確認すると、オートメーションエラーとかで予期せぬエラーとなり、呼び出したアプリごと終了してしまう。

困ったなぁ~、既存のバージョンのようにVisual Studio 2010でビルドしてお茶を濁すか~とか考えていたところで、こんなサイトを発見!

Visual Studio 2015 cannot produce an ATL Dll that successfully registers on Windows XP

つまり、ビルドオプションに「/Zc:threadSafeInit-」を追加すればOKOK!

0 件のコメント: