アクセス違反の実行時にネイティブC++アプリケーションを使用した/clr築DLL

StackOverflow https://stackoverflow.com/questions/2645961

  •  27-09-2019
  •  | 
  •  

質問

私reorganzing従来の混合(管理およびポDllを願うメインのアプリケーションセグメントはポMFCと呼C++のDLLにコンパイルされて/clrフラグの間の通信を管理(C#Dll)とポコードです。Unfortuantely、変更したアクセス違反が発生する前に申請InitInstance()が呼び出されます。この非常に難しくdebug.の情報を取得しますが、以下のスタックトレース.

>   64006108()  
ntdll.dll!_ZwCreateMutant@16()  + 0xc bytes 
kernel32.dll!_CreateMutexW@12()  + 0x7a bytes   

なので、ここではsceanriosました。
-On例->Win32例->c0000005アクセス違反に休憩時にスローされます。最も詳細を取得しますから、上記のスタックトレース.また、アプリF10が失敗する前にブレークポイントにヒットで失敗した場合には、上記のスタックトレース.

-私はstubbedの橋DLLような方法のひとつとして返しまboolおよびその方法は符号化にfalseを返します(C#コードを呼び出す).

bool DllPassthrough::IsFailed() { return false; }

場合にはstubbed出DLLあるらしい/clrフラグの失敗します。だめなの/clrフラグの運行しています。

-私のスタブローコントローラを使ってアプリケーションをVisual Studioウィザードのためのmultidocument用コDllPassthrough::IsFailed().これが成功するもの/clrフラグを使用コンパイルにDLL.

-って、マニュアルLoadLibraryにwinmm.libは、以下の注 アクセス違反時はc++/cliを起動します。.の応用が失敗します。

なので、私の質問がどのように問題を解決するか他のヒント、戦略、または前の事故等によるとなる方法を教えてください。情報のコードセグメントは図書館のアクセス例外?ばんわりを知っているときのようなLoadLibrary通話ので、そういった狭いで失敗します。

感謝。ちなみに利用してVisual Studio2008のプロジェクトの構築時に対す。NET framework2.0に管理します。

役に立ちましたか?

解決

とっても解決は私の問題です。計画的に除去各図書館の参考と コメントを求めること、特定の図書館のアプリケーションコード(管)、最終的に除去の問題は図書館のプログラムです。この力の診断の問題は、幸いなかったりも多くの図書館を解決します。いまだ好奇心いコメントの場合は図書館が確認されていが、アンインストールします。
そこで、次はこれらのライブラリ呼び出し管理コードとパス情報の管側によっ橋DLL.ちなみに、私は僅のwinmm.libのプロジェクトは、それだけで動いてしまう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top