Как изменить команду контекстного меню, чтобы открыть одно окно обозревателя, даже если было выбрано несколько файлов?

Приведенный ниже код эффективно перемещает выбранные файлы в пользовательскую папку в Dropbox. Однако, если выбрано несколько файлов, открываются несколько окон проводника.

Я знаю, что это может быть улучшено, например, чтобы лучше обрабатывать несколько файлов и работать без использования cmd чтобы при запуске не возникала вспышка командной строки - изменения приветствуются.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Move to Dropbox Folder\command]
@="cmd /k \"MOVE \"%1\" \"%%USERPROFILE%%\\Dropbox\\Music\\New Music\" & explorer \"%%USERPROFILE%%\\Dropbox\\Music\\New Music\"\" & exit"

[HKEY_CLASSES_ROOT\*\shell\Move to Dropbox Folder]
"Icon"="C:\\Program Files (x86)\\Dropbox\\Client\\Dropbox.exe"

демонстрация

1 ответ1

0

Чтобы создать пользовательскую команду контекстного меню для перемещения аудиофайлов в определенную папку Dropbox, создайте следующие файлы.

  • dropbox.reg (запустите это)

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\SystemFileAssociations\audio\Shell\Dropbox]
    @="Move to Dropbox Folder"
    "Icon"="C:\\Program Files (x86)\\Dropbox\\Client\\Dropbox.exe"
    
    [HKEY_CLASSES_ROOT\SystemFileAssociations\audio\Shell\Dropbox\command]
    @="C:\\Portable Apps\\Registry Hacks\\dropbox.bat \"%1\""
    
  • И затем dropbox.bat (поместите это в C:\Portable Apps\Registry Hacks)

    @echo off
    setlocal enableextensions disabledelayedexpansion
    
    if "%~1"=="" exit /b
    
    set "targetFolder=%USERPROFILE%\Dropbox\Music\New Music"
    for %%a in (%*) do move "%%~fa" "%targetFolder%"
    

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .