Differences
This shows you the differences between the selected revisions of the page.
2018-06-01 | 2018-06-05 | ||
Restored revision 1526042781. Undoing revision 1527838772. (martin) (hidden) | took off fullstop (86.185.32.142) (hidden) (untrusted) | ||
Line 35: | Line 35: | ||
To allow direct drag&drop downloads, the shell extension was developed. It misuses Windows Explorer CopyHook's. [[msdn>bb776048|CopyHook]] is a COM object (DLL library) that is called by Windows Explorer whenever directory (not file) is transferred within file system. When you drag anything from WinSCP, it creates empty dummy folder in temporary directory and pretends that you as user drag that directory. Once your drop it to Windows Explorer, it calls the CopyHook's (including the WinSCP shell extension), telling it what and where was dragged. This way WinSCP knows the actual destination. It cancels the drag&drop operation, so the dummy directory is not copied by Windows Explorer and transfers your actual selection to now-known destination. | To allow direct drag&drop downloads, the shell extension was developed. It misuses Windows Explorer CopyHook's. [[msdn>bb776048|CopyHook]] is a COM object (DLL library) that is called by Windows Explorer whenever directory (not file) is transferred within file system. When you drag anything from WinSCP, it creates empty dummy folder in temporary directory and pretends that you as user drag that directory. Once your drop it to Windows Explorer, it calls the CopyHook's (including the WinSCP shell extension), telling it what and where was dragged. This way WinSCP knows the actual destination. It cancels the drag&drop operation, so the dummy directory is not copied by Windows Explorer and transfers your actual selection to now-known destination. | ||
- | This on the other hand explains why with the extension you cannot drag files to any other application except for the Windows Explorer. No other application would call the CopyHook. | + | This on the other hand explains why with the extension you cannot drag files to any other application except for the Windows Explorer. No other application would call the CopyHook |