Shell32.dll HELP!!!

M

mcnulty_nathan

i was editing my 'shell32.dll' file yesterday, when i saved my
'shell32.dll' file i renamed it to 'eshell32.dll' and placed it onto
my desktop. i then booted into safe mode. i replaced the original
'shell32.dll' file by renaming it 'zzzzshell32.dll' then copying the
edited 'shell32.dll' file (eshell32.dll). i then SHUT DOWN, WITHOUT
renaming the edited 'shell32.dll' file. so when i try to load it
cannot find it and it just shuts my machine down. i made an msdos
bootable floppy diskette but i have had numerous amounts of trouble
tryng to navigate through DOS. IS there any way to replace the
'shell32.dll' file before i log-on??

please Help

P.S. I am running Windows XP.

many thanx

Nathan
 
E

Ed Forsythe

Hi Nathan,
This should be a no sweat operation. First I want to make sure I understand
where the original shell32.dll resides. Is it zzzzshell32.dll and is it in
the original directory. i.e. c:\windows\system32?
 
D

David Candy

No but you can do it as soon as the computer starts.

Programs call the API MoveFileEx. The stuff below describes what happens as you can also do it by hand as it's putting commands in the registry..
The system does not move the file until the operating system is restarted. The system moves the file immediately after AUTOCHK is executed, but before creating any paging files. Consequently, this parameter enables the function to delete paging files from previous startups.

This value can be used only if the process is in the context of a user who belongs to the administrator group or the LocalSystem account.

If the dwFlags parameter specifies MOVEFILE_DELAY_UNTIL_REBOOT, MoveFileEx stores the locations of the files to be renamed at restart in the following registry value:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations

The function fails if it cannot access the registry.

The PendingFileRenameOperations value is of type REG_MULTI_SZ. Each rename operation stores a pair of NULL-terminated strings. The system uses these registry entries to complete the operations at restart in the same order that they were issued. For example, the following code fragment creates registry entries that delete szDstFile and rename szSrcFile to be szDstFile at restart:

MoveFileEx(szDstFile, NULL, MOVEFILE_DELAY_UNTIL_REBOOT);
MoveFileEx(szSrcFile, szDstFile, MOVEFILE_DELAY_UNTIL_REBOOT);
The system stores the following entries in PendingFileRenameOperations:

szDstFile\0\0
szSrcFile\0szDstFile\0\0Because the actual move and deletion operations specified with the MOVEFILE_DELAY_UNTIL_REBOOT flag take place after the calling application has ceased running, the return value cannot reflect success or failure in moving or deleting the file. Rather, it reflects success or failure in placing the appropriate entries into the registry.

The system deletes a directory tagged for deletion with the MOVEFILE_DELAY_UNTIL_REBOOT flag only if it is empty. To ensure deletion of directories, move or delete all files from the directory before attempting to delete it. Files may be in the directory at boot time, but they must be deleted or moved before the system can delete the directory.

The move and deletion operations are carried out at boot time in the same order they are specified in the calling application. To delete a directory that has files in it at boot time, first delete the files.
 
M

mcnulty_nathan

im sorry David but i just havnt got a clue what you are talking about.
but ed yeas that is right what must i do. p.s if you are going to type
a message like Davids please try and make it a bit easier to
understand
 
E

Ed Forsythe

OK Nathan, first we must get to a DOS (Command) prompt. Do not include the
quotes (") when you type any of the commands. Note that the backslant is
located on the key under the Backspace key (it allso contains the "More"
symbol. The forward slant is under then Question mark (?) norally left of
the right "Shift" key. Take your time and read each instruction carefully
before executing and make sure you include the spaces. Try to copy any error
messages you encounter.

1. Boot (turn on) your computer and hold down the F8 key. Keep holding it
down until you see a
screen with a number of choices. Use the up arrow key to scroll up to "Safe
Mode with Command Prompt." It should be third from the top.
2. Press "Enter"
3. Now you'll see a screen that allows you to select your operating system
in the unlikely event that you are running multiple operating systems. I'm
reasonably sure that there will be one system listed, and that will be
"Microsoft Windows XP Home, Professional, or Media Edition."
4. Press "Enter" and sit on your hands while your computer hums away 'cause
this may take a little time. You will see a screen full of stuff that looks
like garbage but it's actually boot information. Don't do anything. Don't
touch anything computer related! :)
5. When all activity stops you'll be confronted by a screen (possibly
vertically divided) containing "safe mode" in each of the 4 corners
and a DOS prompt on the left side, i.e. C:\> or C:\Documents and Settings\
etc., etc. Whatever the prompt is I want to make sure you are in the root
directory so;
1. Type cd \ and press "Enter" (there is a space between the cd and the
backslant).
2. Now the prompt should be C:\>
3. type "cd \windows\system32" (there is a space between cd and \).
4. Now the prompt should be C:\WINDOWS\system32>
5 Type "ren zzzzshell32.dll shell32.dll" ( telling the system to rename
zzzzshell32.dll to shell32.dll - note the space between ren and
zzzzshell32.dll and between zzzzshell32.dll and shell32.dll. The syntax must
be perfect or there will be an error).
6. zzzzshell32 has been renamed to shell32.dll. You may verify this be
typing dir shell32.dll /s )space between dir & shell32.dll & between
shell32.dll & /s - yes that's a forward slant :)
7. If all's well you will see the a listing for shell32.dll.
8. Restart the computer and enjoy if you still can't boot into XP carefully
copy all error message and post/send them to me.

Good Luck!



Tally Ho!
Ed Forsythe
Maryland, USA
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top