Replacing Explorer Delete/Copy commands


Recommended Posts

Hi folks,

I'm wondering where/how the delete and copy commands can be changed; is it a registry modification or somewhere else, like shell32? I have seen programs that override the cut/copy/paste commands so it is possible somehow.

Thanks.

Link to comment
Share on other sites

Overwrite the commands? Meaning?

Meaning that the built in functionality that deletes a file or copies a file from one place to another does not occur, but some other specified application handles deleting or copying the file.

Link to comment
Share on other sites

I think this is what you want.

Almost, but that only removes these commands from the context menu; as the author writes in there, he still can use keyboard shortcuts. Reshack doesn't seem to let you change what happens when the context menu items are clicked. If it did, it might give a clue as to where the functionality can be defined overall.

Thanks though, I'll keep looking (and waiting)! :)

Link to comment
Share on other sites

Uh, well, here's a thought. You just said shell32.dll probably doesn't let you change what happens when you click an option in a menu. Well, if you could test this by changing the name of one of the functions, let's say Copy, and testing it if it still works. If it does, then you'd probably have to figure out where the corresponding number (in the script line shown through ResHacker) refers to. I'm thinking when an option is clicked on, it calls the needed function using the number as the function's "part number," as if you were trying to find a certain item from a warehouse using an item no. All you need to find out now is where's the warehouse. You probably figured this much out already, but that's all I know.

Oh, secondly, if Terracopy uses an installer, you could try disassembling that package to see what's it's doing precisely, if you're up to doing that.

Link to comment
Share on other sites

Uh, well, here's a thought. You just said shell32.dll probably doesn't let you change what happens when you click an option in a menu. Well, if you could test this by changing the name of one of the functions, let's say Copy, and testing it if it still works. If it does, then you'd probably have to figure out where the corresponding number (in the script line shown through ResHacker) refers to. I'm thinking when an option is clicked on, it calls the needed function using the number as the function's "part number," as if you were trying to find a certain item from a warehouse using an item no. All you need to find out now is where's the warehouse. You probably figured this much out already, but that's all I know.

Oh, secondly, if Terracopy uses an installer, you could try disassembling that package to see what's it's doing precisely, if you're up to doing that.

Sounds like a good idea. :) I'll give it a shot and see what I can come up with.

Link to comment
Share on other sites

Oh, and if the test doesn't work, you could probably figure that the name of the function would be the "part no./name." You'd still have to find the system detailing the function. (I wonder, then, what's the number for? o.o). Well, anyway, that's how I think programming languages and scripts work. I've only used AutoIt, though...

Link to comment
Share on other sites

Oh, and if the test doesn't work, you could probably figure that the name of the function would be the "part no./name." You'd still have to find the system detailing the function. (I wonder, then, what's the number for? o.o). Well, anyway, that's how I think programming languages and scripts work. I've only used AutoIt, though...

I was hoping it wouldn't require modifying a system file though. I don't think that programs like TerraCopy modify system dlls.

Edited by tyraen
Link to comment
Share on other sites

have you checked the accelerators?

in example:

shel32.dll > accelerator 1

1 ACCELERATORS

LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US

{

VK_Z, 28699, NOINVERT, CONTROL, VIRTKEY

VK_X, 28696, NOINVERT, CONTROL, VIRTKEY

VK_C, 28697, NOINVERT, CONTROL, VIRTKEY

VK_V, 28698, NOINVERT, CONTROL, VIRTKEY

VK_A, 28705, NOINVERT, CONTROL, VIRTKEY

VK_F1, 28785, NOINVERT, VIRTKEY

VK_F2, 28690, NOINVERT, VIRTKEY

VK_INSERT, 28697, NOINVERT, CONTROL, VIRTKEY

VK_INSERT, 28698, NOINVERT, SHIFT, VIRTKEY

VK_DELETE, 28689, NOINVERT, VIRTKEY

VK_D, 28689, NOINVERT, CONTROL, VIRTKEY

VK_DELETE, 28689, NOINVERT, SHIFT, VIRTKEY

VK_RETURN, 28691, NOINVERT, ALT, VIRTKEY

}

and take a look at the menu 216:

MENUITEM "Delete", 28689, MFT_STRING, MFS_ENABLED

MENUITEM "Copy", 28697, MFT_STRING, MFS_ENABLED

see? the number means the command. so. what do you want exactly? in example, if you remove the accelerator, your ctrl+c shortcut will not work. at all. and so on...

btw, programs work differently. they dont change system files. they do their jobs with system hooks or something. they change the command "on the fly" while running. or something similar.

Link to comment
Share on other sites

see? the number means the command. so. what do you want exactly? in example, if you remove the accelerator, your ctrl+c shortcut will not work. at all. and so on...

btw, programs work differently. they dont change system files. they do their jobs with system hooks or something. they change the command "on the fly" while running. or something similar.

I'm trying to figure out what has modified/hooked into XP and started giving me errors when renaming/deleting directories. When I try either, it gives me a message: "Cannot delete foldername: Selects special characters and copies them to your document." Which sounds kind of strange, but I believe it is a description for the Clipboard.

I think that possibly there is a GUID pointing at the Clipboard description when it should be pointing at whatever is supposed to handle deletes/renames. But it's only a guess right now. Everyone has been very helpful in giving me new places to look for this, so thanks again. :)

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.