Pull out the hidden DLL black hand

  
In Windows, almost all applications use DLL (dynamic link library) file, its normal or not related to the software can run normally. Many software failures are also directly related to it. But applications often call dozens of DLL programs, how to determine who is the "culprit"?

Case Playback: After an illegal operation, Windows XP “Search Assistant” becomes a “whiteboard”. Not only that, but the “User Account” item in “Control Panel” also appears “faceless”. Click "Start → Help and Support", the mouse flashes but there is no trace of the "Help and Support" program interface.

Case Study: seat of your pants, I believe that a DLL file system has been canceled, lost or damaged. But almost every program in Windows has to call up to hundreds of DLL files. If you look for analysis one by one in the usual way, it is tantamount to finding a needle in a haystack. Considering that three programs are "disfigured" at the same time, they should be affected by the same (or several) DLL files. To do this, you must find the DLL file that is used together by the above three programs, and then find out the "behind the scenes".

Find and compare

first step: start with "Search Assistant" to start, first understand its "life experience history." Open "Search Assistant" on another machine with Windows XP, and press Ctrl+Alt+Del to bring up the "Task Manager". In the "Applications" tab, select "Search Assistant" and right click, select "Switch" To the process", huh, it turned out to be part of Explorer.exe (resource manager).

Step 2: Use a similar method can be learned "Help and Support" is a process Helpctr.exe, but in the "user account" method can only be found by observation and comparison of its ownership process mshta.exe.

Tips

You can determine the process to which it belongs by comparing the changes in the Task Manager by opening and closing the User Account. You can also open the Search Assistant. Enter "tasklist /fo table>C:acc1.txt" in the "Command Prompt". After closing the program, enter "tasklist /fo table>C:acc2.txt" in the "Command Prompt", then Use the fc command to compare "fc C:acc1.txt C:acc2.txt>C:acc.txt", and the extra items obtained by the comparison are the processes to which the program belongs.

third step: restart the computer, to ask the following software LISTDLLS played. Download the software here, then move listdlls.exe to C:Windows, press Ctrl+R to open the "Run" box, type "cmd", and type in the "Command Prompt":

listdlls -r explorer. Exe>C:explorer1.txt.

Then open the "Search Assistant", enter "listdlls -r explorer.exe" in the "command prompt" again: C:\\explorer2.txt

Finally use the fc command to compare: < BR>
fc C:\\explorer1.txt C:\\explorer2.txt>C:\\explorer.txt.

this open C: \\ explorer.txt file, after comparing the extra file that is "Search Companion" DLL file called.

Tips

The usage of ListDlls is: listdlls [-r] [processname

pid] or listdlls [-r] [-d dllname]

Step 4: Restart the computer and use the command "listdlls -r helpctr.exe>C:\\helpctr.txt" to get the DLL file used by "Help and Support". The restart here is to unload the DLL files that have not been used from the memory.

Step 5: Restart again, use the command "listdlls -r mshta.exe>C:\\mshta.txt" to get the DLL file used by the "user account".

screening last "murderers"

analysis DLL file explorer.txt in which files in the directory containing the file "srchasst" and are "Search Companion" separate calls. The remaining files are sxs.dll, vbscript.dll, and JScript.dll files in the C:\\Windows\\system32 directory. Using the "search" method, you can find that the above files exist in the files helpctr.txt and mshta.txt. It seems that the "culprits" are not the three.

back to the original computer and found three files are present, it is not damaged. Register with the regsvr32 command. Sure enough, after registering the jscript.dll file (using the command regsvr32 JScript.dll), the "whiteboard" program finally restored its beautiful "face".

Xiaobian something to say:

a lot of software system failures are caused by DLL file. In the past, we often paid more attention to whether the DLL file was lost. In fact, there are still many reasons why no registration was successful. After reading the method described in this article, we can easily filter out the DLL file that caused the failure and finally solve the problem.
Copyright © Windows knowledge All Rights Reserved