3

ネイティブ コードの障害を合成したいと考えています。これは、特定のデバッグ出力が発生したときにどこに出力されるかを確認できるようにするためです。

Pskill (Sys-Internals から) は、正常な終了を引き起こします。DotCrash.exe は、Microsoft から直接入手できなくなったようです。

プロセスで外部からクラッシュを引き起こす方法はありますか?

4

6 に答える 6

3

windbg を使用する前に、次の方法でこれを行いました。

  1. プロセスの開始
  2. windbg によるプロセスへのアタッチ
  3. アプリの関数の 1 つにブレークポイントを設定する
  4. ブレークポイントに到達するまでアプリを実行する
  5. windbg で、ローカル変数をアクセス違反の原因となるものに設定します (たとえば、ポインタを 0xFFFFFFFF に設定するか、レジスタ値をいじる)
  6. f5 を押すと、アプリがクラッシュするはずです
于 2009-11-18T06:12:06.253 に答える
2

コアダンプと同等のものが必要な場合はdrwtsn32 -p ProcessId、実行中のプロセスの現在の状態のダンプを生成します。適切なデバッグ シンボルがあれば、貴重な情報を得ることができます。

HTH。

于 2009-11-17T18:10:54.823 に答える
1

必要なときにいつでもダンプが必要な場合は、Microsoft の無料のデバッグ診断ツールを使用できます。これは、それを行うための優れた UI を備えているか、drwtsn32 -p processidjrbjazz が推奨するコマンド ラインで使用できます。

于 2010-04-20T06:39:05.183 に答える
1

Nick が言及しているように、これは Windows 用のデバッグ ツールを使用して簡単に実行できます。

于 2009-11-18T16:09:32.637 に答える
1

CreateRemoteThreadを使用してみてください。正しく使用するのは簡単ではありませんが、他のプロセスをクラッシュさせるのはかなり簡単なはずです;-)

于 2010-04-20T06:49:41.640 に答える
0

ある種のフック関数をインストールするか、迂回ライブラリのようなものを使用できますか?

于 2009-11-17T15:22:42.853 に答える