Изменить ассоциацию exe-файла для одного пользователя

Изменить ассоциацию exe-файла для одного пользователя

относительно легко установить файловую ассоциацию для exeфайлов в Windows (хороший способ заблокировать себя, кстати). Обычно это делается в HKEY_CLASSES_ROOT, который действителен для всех пользователей. Но есть ли способ изменить эту ассоциацию только для одного пользователя?

Я хочу выполнять какое-то действие каждый раз перед запуском какой-то программы этим пользователем. Затем лаунчер должен вызвать программу. Однако, CreateProcessне работает, если требуется повышение прав, в то время как ShellExecuteлаунчер будет запускаться рекурсивно... - поэтому идея была в том, чтобы запустить программу от другого пользователя, который не установил ассоциацию файла для exe-файла.

Есть ли способ этого добиться?

решение1

Да.

HKCR представляет собой объединение HKLM\Software\Classesи HKCU\Software\Classes.

Вы можете просто создать HKCU\Software\Classes\.exeи изменить ассоциацию файлов только для текущего пользователя.

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