Win7/X64 でファイル名に % が含まれる場合にプログラムがクラッシュする

Win7/X64 でファイル名に % が含まれる場合にプログラムがクラッシュする

しばらくの間、次のような再現可能なエラーが発生していました:

名前にが含まれるファイル (拡張子に関係なく) を開こうとすると%、開く方法 (エクスプローラーでクリックする、コマンド プロンプトで手動で開くなど) に関係なく、要求を送信するために使用されるプログラム (前の例では、エクスプローラーと cmd.exe) が 100% クラッシュします。

Windows がファイルを開くために使用する正確なメカニズム/シーケンスを知っている人はいますか? そうすればデバッグ情報でお手伝いできます。

答え1

画面上のアイコンをダブルクリックしてからアプリケーションが起動するまでには長い道のりがあります。

そこには多くうまくいかない。

  1. ファイルをクリックします。
  2. Windowsはファイルを決定するタイプ
  3. このファイルは単独で実行できますか、それとも開くには別のアプリケーションが必要ですか?
    レジストリがファイル拡張子について何を示しているかを確認しましょう。
  4. レジストリによると、 ですtxtfile
  5. レジストリによるopenと、txtfileC:\Windows\system32\NOTEPAD.EXE
  6. これでようやくプロセスを作成できます。 プロセスモニターでのプロセス作成イベントのキャプチャ

非常に多くのことが関係しているため、問題が正確に何であるかを判断する方法はありません。自分でさらに調査を行う必要があります。

以下をご覧ください:

関連情報