Short Question:
How do I support Cut/Paste to/from a .NET app and Windows Explorer?
Full Text:
I'm nearing the completion of a Remote File Management application.
It looks and feels a lot like Windows Explorer. The difference is that it communicates with a remote server via web services. The remote web services store and retrieve the file bits to/from a database... along with some other bells and whistles that Explorer doesn't have.
I've got full support for drag and drop between my app and the desktop/Windows Explorer, but a new requirement has come up that I have to add cut/copy/paste between my application and Windows Explorer. I've got copy working just fine from my Edit/Copy menu (I just do a Clipboard.SetFileDropList(FileCollection
) after copying them to a
temp folder), then Windows Explorer can use it's Edit/Paste menu to get
the files. My dilema relates to the "Cut" command:
If the user selects fils and/or folders from my app, then chooses Edit/
Cut from my menu, then goes to Windows Explorer and chooses Edit/Paste, How do I know when Windows Explorer has successfully completed the paste so I can then remove the files from my remote system? I assume there's some sort of system event that I either need to subscribe to or poll?
Same question in reverse. When someone cuts from Windows Explorer and pastes into my app, how do I let Explorer know that I've stored the files successfully, so Explorer can then delete the files locally?