問題タブ [mixed-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3864 参照

.net - C++/CLI で EXE アセンブリを動的にロードしているときに例外が発生しました (ファイルまたはアセンブリをロードできませんでした '、バージョン = 1.0.3836.39802 ...)

を使用して C++/CLI 管理モードで EXE を作成するアセンブリを動的にロードしているときに、C++/CLI で例外に直面していますAssembly.Load。DLL アセンブリは正常にロードされますが、EXE アセンブリのロードに失敗し、次の例外が生成されます。

TestManager.dll で「System.IO.FileLoadException」タイプの未処理の例外が発生しました

ファイルまたはアセンブリ 'testAssembly、Version=1.0.3836.39802、Culture=neutral、PublicKeyToken=null' またはその依存関係の 1 つを読み込めませんでした。fixups` (2 つ以上のセクションまたは TLS セクションを含む IAT) を使用して検証不能な実行可能ファイルを読み込もうとしています。

HRESULT からの例外: 0x80131019

TestManager.dll 自体はマネージ dll であり、CLI の別の CLR プロセスにロードされ、別のプロセスとして EXE アセンブリをロードしようとしますが、失敗して例外が生成されます。

これはおそらく、混合モードで遊んでいることが原因である可能性があります。

0 投票する
7 に答える
52718 参照

.net - .NET 4 での混合モード アセンブリ

私は約 2 年前にデータベース アクセス用に .NET 2.0 でクラス ライブラリを作成し、それを .NET 2.0、3.0、および 3.5 でずっと使用してきました。

私が取り組んでいる現在のプロジェクト (.NET 4.0 アプリケーション) では、古い忠実なクラス ライブラリを使用しようとしましたが、次の例外が発生しました。



何が間違っている可能性があり、どうすれば修正できますか?

0 投票する
1 に答える
1678 参照

visual-studio-2008 - c++/cli プロジェクトでインテリセンスを有効にするにはどうすればよいですか?

Visual Studio 2008 を使用しており、マネージ C++ DLL をロードするネイティブ C++ プロジェクトがありますが、最後のものでは、インテリセンスはマネージ コードに対してのみ機能しなくなりました。

このプロジェクト (dll) には混合コード (ネイティブとマネージド) が含まれており、クリーンな行に "::" のみを記述した場合、インテリセンスはマネージド コードではなく、通常のように基本クラスから継承するメソッドを提供します。例

助けが必要です。そうしないと、盲目的に飛ぶ必要があります。

0 投票する
2 に答える
5165 参照

asp.net - AD に対する混合モード認証と、メンバーシップ プロバイダーで失敗した場合のデータベースへのフォールバック

私のユーザーは、Active Directory またはデータベースに対してフォーム認証を使用します。Windows統合認証はありません!!

私が欲しいのは、ユーザーが認証フォームを送信すると、Active Directory に対してユーザーを検証しようとし、失敗した場合はデータベースを試してみることです。

どうやってやるの?私が念頭に置いていたのは、ロジックをカプセル化するカスタム メンバーシップ プロバイダーを構築することでしたが、開始方法がわかりません。

より良いアイデアはありますか?

0 投票する
1 に答える
853 参照

.net - 混合モード アセンブリで .net Framework 3.5 および 4.0 をターゲットにする

私は、vc 9.0 ランタイムを使用して .net 3.5 をターゲットとする混合モード アセンブリを持っています。私は .net 4.0 をサポートしたくありませんが、古いフレームワークとの互換性も維持しています (ライブラリは 4.0 および 3.5 プロセスで動作するはずです)。

.net 4.0 に更新する場合、vc 10.0 ランタイムを使用する必要があります。ただし、このランタイムから、古い .net フレームワークをターゲットにすることはできなくなりました。

現時点では、vc 10 ランタイムを使用して混合モード アセンブリから古い .net フレームワークをサポートする方法がわかりません。誰もこれを達成する方法を知っていますか?

敬具

0 投票する
1 に答える
3430 参照

visual-c++ - 混合モード アセンブリがネイティブ C++ pdb のシンボルをロードしない

C++/CLI で混合モード アセンブリを使用しています。すべてのマネージ モードでアセンブルされた pdb は、混合モード アセンブルで正常に読み込まれると読み込まれますが、ネイティブ dll と pdb は、モジュール ペイン (つまり、VS デバッグ -> Windows -> モジュール) にネイティブ pdb の情報が表示されていても読み込まれません。

私はネイティブ dll を使用しており、そのエクスポートされた関数を C++/CLI コードの混合アセンブリで呼び出しています。ここでは、関数が正常に呼び出されますが、ネイティブ pdb シンボルが読み込まれず、ネイティブ コードのすべてのブレークポイントが白抜きの円として表示され、ツール ヒントには、このために読み込まれたシンボルがないと表示されます。

私はすべてを行いました.pdbは現在のディレクトリに配置され、管理されたプロセスが起動されます。すべてのobjおよびdebugフォルダーを削除し、すべてのプロジェクトを同時に再コンパイルしました。Exe と対応する pdb のシンボルが一致することを示す ChkMatch ユーティリティも使用しました。

マネージド (C++/LCI 混合モード) コードからの呼び出し中にネイティブ コードのブレークポイントを有効にする方法はありますか?

よろしく、

ウスマン

0 投票する
6 に答える
2124 参照

.net - C++ コードが C++/CLI から呼び出された場合、マーシャリングはどのように実行されますか?

この質問によると、C++/CLI を使用してマネージド コードとアンマネージド コードをシームレスに組み合わせることが可能です。よくわかりません-管理されたものと管理されていないものの間にマーシャリングがあるべきではありませんか?

たとえば、発行されたヘッダーを持つネイティブ C++ .dll としてコンパイルされる InnerLibrary と、InnerLibrary からコードを呼び出す C++/CLI OuterLibrary があります。マーシャリングはありますか?誰がそれを実装し、どのくらいの費用がかかりますか?

0 投票する
1 に答える
446 参照

c++ - メインスレッドで破壊されていないグローバル変数?

混合モードの実行可能ファイルがあり、ネイティブグローバル変数のコンストラクターがメインスレッドで呼び出されているのに、デストラクタが他のスレッドで呼び出されていることに気付きました。
スレッドの名前は「Thread::intermediateThreadProc」です。

これの理由は何ですか?そして、この'Thread :: intermediateThreadProc'スレッドとは何ですか?

ありがとう。

0 投票する
3 に答える
428 参照

.net - アセンブリがロードされているフレームワークを識別する方法は?

ユーザーから、.NET 4をインストールした後、アプリケーションの奇妙な動作を解決できるとの報告がありました。

アセンブリを指定しなかった場合、より高いが互換性のあるバージョンでロードされる可能性があることを私は知りませんでした。

実行可能ファイルが実行されているフレームワークを特定することは可能ですか?実行時に?またはいくつかの外部プロセスを介して?これが事実であり、ユーザーエクスペリエンスが他の問題の結果ではないことを確認したいと思います。


Process Explorerによると、EVEMonは2.0で実行されていますが、問題は環境にあると思われます。

Process Explorer

0 投票する
1 に答える
965 参照

assembly - C++/CLI でインライン asm が恐ろしい問題を引き起こすのはなぜですか?

C++/CLI でインライン asm を使用しています。恐ろしい問題の事実は、私が観察したバグである可能性があります。ある関数呼び出しから別の関数呼び出しにベクトルを渡しました。呼び出された関数内の _asm{....some assembly code here} のコード スニペット全体をコメントすると、他の関数から提供されたベクトルが使用され、ベクトル全体が正常に取得され、呼び出された関数の引数に正常にコピーされます。正しい方法で。

しかし、uncmment _asm{} の場合、呼び出された関数で _asm{} パッチを使用すると、オブジェクトのベクトル全体が破損し、ベクトルやその他の文字列データを含むオブジェクト全体が破損し、オブジェクト内のすべてのデータが npos=4294967295 のように表示されます.

それは何ですか?これはなぜですか?CLI で問題が発生していますか、それともインライン asm を間違った方法で使用していますか?

ここで立ち往生しているので、親切に助けてください。

ここで _asm{} 内に何も書かないと、私が説明した問題が発生します。

よろしくウスマン