VS2012+Win8SDKのDirect3D SampleでVSからは実行できるのに、exeを直接叩くと「アプリケーションを正しく起動できませんでした」
Visual Studio 2012+Windows 8 SDK用のオンラインサンプル「Direct3D Tutorial Win32 Sample」のプロジェクトを作成
構成をWin32→x64にしてビルド
VSからデバッグ・実行はできる。
しかし生成されたexeを直接実行すると
アプリケーションを正しく起動できませんでした(0xc000007b)になる
対処は
プロパティ→構成プロパティカスタムビルドステップ→全般→コマンドラインの
copy /y "$(WindowsSdkDir)redist\d3d\x86\D3DCompile*.DLL" "$(TargetDir)"
を
copy /y "$(WindowsSdkDir)redist\d3d\x64\D3DCompile*.DLL" "$(TargetDir)"
に変更。
つまり32bit版のd3dcompiler_46.dllがコピられていたので起動できなかったということ。
Tutorial01はd3dcompiler_46.dllを使わないので、何もしなくてもそのまま実行できました。