Конфигурация «отправить» и сопоставления файлов по умолчанию в Windows 10 — все пользователи

Конфигурация «отправить» и сопоставления файлов по умолчанию в Windows 10 — все пользователи

Я разработчик, и я только что создал приложение и свой собственный тип файла с уникальным расширением (допустим, .aaa). Я хочу добавить запись в меню «Отправить» (щелчок правой кнопкой мыши по файлу -> отправить), чтобы я мог отправлять файлы '.aaa' в свое приложение, и когда я дважды щелкну по файлу .aaa, он должен открыться вместе с моим приложением.

Я обнаружил, пытаясь решить эту проблему, что я могу поместить ярлык на свое приложение в C:\Users\<yourusername>\AppData\Roaming\Microsoft\Windows\SendTo, однако, это будет работать только для одного пользователя. Интересно, есть ли ключ реестра, который я мог бы добавить/отредактировать для этого (для обоих, "отправить" и ассоциации файлов), для всех пользователей...

Не могли бы вы мне с этим помочь?

решение1

C:\Users\Defaultбудет применено только при создании нового пользователя.

Чтобы скопировать его в SendTo каждого существующего пользователя, вам нужно написать простой пакетный скрипт:
copy "<yourfile with path>" %APPDATA%\Microsoft\Windows\SendTo /y

и скопируйте пакетный скрипт в:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup


Ассоциацию файлов можно также запрограммировать с помощью пакетного скрипта, например:

ftype txtfile="C:\Program Files (x86)\Notepad++\notepad++.exe" %1

Чтобы не создавать никаких других проблем, вам нужно найтитип fпеременная, используемая вашей программой (если таковая имеется), в нашем случае для .txtпеременной это txtfile.
Вы можете найти его в regedit - HKEY_CLASSES_ROOTпосмотрев на расширение файла (в нашем случае .txt), нужная нам переменная это значение данных (default)строки.

Если значение отсутствует, используйте скрипт следующим образом:

ftype txtfile="C:\Program Files (x86)\Notepad++\notepad++.exe" %1
assoc .txt=txtfile

Замените txtfileна любое желаемое значение.

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

Связанный контент