これを数週間試してみます... D3DプロキシDLLをplattformツールセットVS2013(vs120)以下でコンパイルするたびにアクセス違反が発生します(0xC0000005)をこのライブラリを使用するD3D9アプリケーションで使用します。 VS2015またはVS2017に変更した場合、例外は発生しません。vC++コンパイラのバージョンがVS2015未満でコンパイルされた場合のアクセス違反
私のdllには、DirectX 9インターフェイスIDirect3D9とIDirect3DDevice9(rawプロキシdllとして機能する)の再実装のみが含まれています。
VS2013を使用したい理由は、クローズドソースD3D9アプリケーションがVS2013を使用してコンパイルされていることです。私が正しく異なるVSランタイムを使用して理解していると、しばしば正しく動作しません。なぜなら、D3D9メソッドへのすべての呼び出しをファイルに記録しようとすると、ランタイムエラーが発生するからです。
私はWindows 8.1 Proを途中で使っています。
何か助けてください!
* VS2015またはVS2017に変更した場合、例外は発生しません。* - アプリケーションのデバッグを開始する(またはデバッグする方法を学習する)ときに、例外の原因となっている関数、行などを確認します。アクセス違反は、さまざまな理由で発生する可能性があります.1つは、異なるコンパイラによって明らかにされたコードのバグです。 – PaulMcKenzie
明らかに私は十分に明確ではなかった。 _私がVS2013を使用したい理由は、私のクローズドソースD3D9アプリケーションがVS2013.を使用してコンパイルされているということです。これは私がD3D9呼び出しを傍受しようとしているクローズドソースアプリケーションを意味していました。例外がスローされる部分のソースコードはありません。 – Apollo13