問題タブ [ntdll]

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 投票する
1 に答える
892 参照

windows - LoadLibraryEx(..., LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR) が間違った dll をロードするバグの回避策

状況は次のとおりです。これらの dll はプロセスでロードされます。

プロセスは にありc:\abc\ます。読み込んc:\zxc\bar.dllでいます。に暗黙的にリンクしfoo.dllます。c:\zxc\foo.dllそして、同じフォルダにある にリンクする必要があります。私はそれをロードします

c:\abc\foo.dllがロードされていない場合は、c:\zxc\foo.dll適切にロードされてc:\zxc\bar.dllリンクされます。ただし、c:\abc\foo.dllがロードされている場合は、代わりに にc:\\zxc\\bar.dllリンクします(プロセスで既にロードされている場合でも)。これは、Global Flags の [Show loader snaps] チェックボックスを使用して確認されました。c:\abc\foo.dllc:\zxc\foo.dllc:\zxc\foo.dll

どうすれば回避できますか?

これbar.dllはサードパーティであるため、DELAYLOAD を実装することはできません。

c:\abc\foo.dllそして、プロセスへのロードを防ぐことはできません。

フックを考えてntdll!LdrpFindOrMapDllいますが、信頼性がないようで、サポートされているすべての Windows バージョンでこれを徹底的にテストする必要があるため、最初はより簡単な回避策を探しています。

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

c# - シリアルへの書き込み時のUWP未処理例外

UWP でのシリアル デバイスへの書き込みに問題があります。ポートに書き込むための私のタスクは次のようになります。

この関数を呼び出す最初の 2 回は、コードが正常に機能します。3 回目は、 await dataWriter.StoreAsync()行の ntdll.dll で Unhandled Exception が発生しました。

私が見ることができる完全な例外は次のとおりです。

xx.exe の 0x00007FFCB3FCB2C0 (ntdll.dll) で未処理の例外: 0xC000000D: 無効なパラメーターがサービスまたは関数に渡されました。

この回答では、入力ストリームを閉じるガベージ コレクターについて言及していますが、コードでなぜそれが発生するのかわかりません。この問題の根底に到達するための助けをいただければ幸いです。

0 投票する
0 に答える
2650 参照

c# - ntdll.dll でのアプリケーション クラッシュ、バージョン: 6.1.7601.23677、.Net Framework バージョン: v4.0.30319

.Net フレーム ワークを更新した後、アプリケーションが頻繁にクラッシュします。以下は、イベント ビューアで見つかったアプリケーション イベント ログです。

エラーが発生しているアプリケーション名: MyApp.exe、バージョン: Version of my App、タイム スタンプ: 0x5885f545 エラーが発生しているモジュール名: ntdll.dll、バージョン: 6.1.7601.23677、タイム スタンプ: 0x589c957a 例外コード: 0xc015000f エラー オフセット: 0x00084269 エラーが発生しているプロセス ID: 0x %9 障害のあるアプリケーションの開始時刻: 0x%10 障害のあるアプリケーションのパス: %11 障害のあるモジュールのパス: %12 レポート ID: %13 障害のあるパッケージの完全な名前: %14 障害のあるパッケージ相対アプリケーション ID: %15

また、イベントログにも以下のエラーが見つかりました。

アプリケーション: MyApp.exe .Net Framework バージョン: v4.0.30319
説明: 未処理の例外が発生したため、プロセスが終了しました。例外情報: 例外コード c015000f、例外アドレス 77994269

私にとっては、ntdll.dll と .Net バージョンの間に互換性の問題があるようです。.Net 4.0.30319 と共にインストールする必要のある KB はありますか?

クラッシュ ダンプを分析しています。コール スタックの下に表示されます。

問題は Windows 2008 にあります。同じ .Net バージョンと ntdll.dll バージョン 6.1.7601.17514 を持つマシンの 1 つで、アプリケーションは正常に動作します。

ただし、ntdll.dll バージョン6.1.7601.23677でのみ、アプリケーションがクラッシュします。