Windows system >> Windowsの知識 >  >> Windows XPシステムチュートリアル >> XPシステムの基本 >> 隠されたDLLの黒い手を引く

隠されたDLLの黒い手を引く

  
Windowsでは、ほぼすべてのアプリケーションがDLL(ダイナミックリンクライブラリ)ファイルを使用しています。その通常のソフトウェアとは無関係に、通常の動作を行うことができます。多くのソフトウェア障害もそれに直接関係しています。しかし、アプリケーションは何十ものDLLプログラムを呼び出すことがよくあります。ケース再生:不正な操作の後、Windows XPの“ Search Assistant”は“ホワイトボード”になりますそれだけでなく、“コントロールパネル”の“ユーザーアカウント”の項目も“フェイスレス”に見えます。 [スタート]→[ヘルプとサポート]の順にクリックすると、マウスが点滅しますが、[ヘルプとサポート]プログラムインターフェイスの痕跡はありません。

ケーススタディ:あなたのズボンの座席は、私は、DLLファイルシステムは、キャンセル紛失または破損されたと思われます。従来の方法では1つの分析を見つけるために、場合でも、ほぼすべてのWindowsプログラムは、干し草の山で針と何ら変わり、DLLファイルの10数百人に呼び出してはなりません。 3つのプログラムが同時に "構成解除"されていることを考えると、それらは同じ(または複数の)DLLファイルの影響を受けるはずです。これを行うには、上記の3つのプログラムで一緒に使用されているDLLファイルを見つけ、「舞台裏」を見つけなければなりません。



第一歩を検索し、比較する:最初の理解、開始するには「検索アシスタント」で始まる「人生経験の歴史を。」 Windows XPがインストールされている別のコンピュータで[検索アシスタント]を開き、Ctrl + Alt + Delキーを押して[タスクマネージャ]を開き、[アプリケーション]タブで[検索アシスタント]を選択し、右クリックして[切り替え]を選択します。プロセスには、ハァッ、それはExplorer.exe(リソースマネージャ)の一部であることが判明した。で
ステップ2:「ヘルプとサポート」を学ぶことができます同様の方法を使用して、プロセスHELPCTR.EXEですが、「ユーザーアカウント」方式でのみ観察し、その所有権プロセスmshta.exeを比較することによって見つけることができます。ユーザーアカウントを開いたり閉じたりすることでタスクマネージャの変更を比較することで、所属するプロセスを特定することができますまた、検索アシスタントを開くこともできます。 「コマンドプロンプト」に「tasklist /fo table> C:acc2.txt」と入力し、プログラムを閉じたあと、「コマンドプロンプト」に「tasklist /fo table> C:acc2.txt」と入力し、 fcコマンドを使用して "fc C:acc1.txt C:acc2.txt> C:acc.txt"を比較すると、比較によって得られる余分な項目は、プログラムが属するプロセスです。

第三段階:以下のソフトウェアLISTDLLSが演奏依頼し、コンピュータを再起動します。ここでソフトウェアをダウンロードし、次にlistdlls.exeをC:Windowsに移動し、Ctrl + Rを押して「ファイル名を指定して実行」ボックスを開き、「cmd」と入力して「Command Prompt」と入力します。

listdlls -r explorer。エグゼ> C:explorer1.txt。

次に、 "Search Assistant"を開き、 "コマンドプロンプト"に "listdlls -r explorer.exe"をもう一度入力します。C:\\ explorer2.txt

最後に、fcコマンドを使用して比較します。< BR> fc C:\\ explorer1.txt C:\\ explorer2.txt> C:\\ explorer.txt

このオープンC:\\ explorer.txtファイルと呼ばれるDLLファイル「コンパニオンを検索」で、余分なファイルを比較した後。 ListDllsの使い方は次のとおりです。listdlls [-r] [processname [pid]またはlistdlls [-r] [-d dllname]

ステップ4:コンピュータを再起動し、 "listdlls -r helpctr.exe> C:\\ helpctr.txt"コマンドを使用して、 "ヘルプとサポート"で使用されているDLLファイルを取得します。ここでの再起動は、メモリから使用されていないDLLファイルをアンロードすることです。

手順5:再起動し、 "listdlls -r mshta.exe> C:\\ mshta.txt"コマンドを使用して、 "ユーザーアカウント"で使用されているDLLファイルを取得します。

は、最後の「殺人」ファイル「srchasst」を含むディレクトリ内のファイルする

解析DLLファイルexplorer.txtをスクリーニングし、別の呼び出し「コンパニオンを検索」しています。残りのファイルは、C:\\ Windows \\ system32ディレクトリ内のsxs.dll、vbscript.dll、およびJScript.dllファイルです。 "search"メソッドを使用すると、上記のファイルがhelpctr.txtファイルとmshta.txtファイルに存在することがわかりますが、 "犯人"は3つではないようです。 Immobel.com戻る元のコンピュータへと3つのファイルは、それが損傷していない、存在しているが分かりました。 regsvr32コマンドで登録してください。もちろん、(コマンドregsvr32 JScript.dllを使用して)jscript.dllファイルを登録した後、「ホワイトボード」プログラムはついにその美しい「顔」を復元しました。

Xiaobianは言いたい:

をソフトウェアのシステム障害の多くは、DLLファイルによって引き起こされます。これまでは、DLLファイルが失われたかどうかについて多くの注意を払っていましたが、実際には登録が成功しなかった理由はまだたくさんあります。この記事に記載されている方法を読んだ後、私達は容易に失敗を引き起こしたDLLファイルを排除して、そして最後に問題を解決することができます。
Copyright © Windowsの知識 All Rights Reserved