Зарегистрируйте exe-файл для файла определенного типа, используя консольное приложение ядра .net - PullRequest
0 голосов
/ 31 октября 2019

У меня есть файл .mkd, который я хочу открыть, используя мое специальное программное обеспечение (mkdLauncher.exe), установленное в программных файлах.

Я сделал это в Java, используя следующий код:

Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, ".mkd");
//Setting the application value to the extension key
Advapi32Util.registrySetStringValue(WinReg.HKEY_CLASSES_ROOT, ".mkd", "", "mkd_file");
//creating the native application key
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "mkd_file");
Advapi32Util.registrySetStringValue(WinReg.HKEY_CLASSES_ROOT, "mkd_file", "", "mkd Native Program");
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "mkd_file", "DefaultIcon");
Advapi32Util.registrySetStringValue(WinReg.HKEY_CLASSES_ROOT, "mkd_file\\DefaultIcon", "", "\"" + LAUNCHER_PATH.replace("/", "\\") + "ls.ico\"");
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "mkd_file", "shell");
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "mkd_file\\shell", "open");
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "mkd_file\\shell\\open", "command");
//Setting the application path as value to the newly added application key
Advapi32Util.registrySetStringValue(WinReg.HKEY_CLASSES_ROOT, "mkd_file\\shell\\open\\command", "", "\"" + LAUNCHER_PATH.replace("/", "\\") + "mkdLauncher.exe\" \"%1\"");
Advapi32Util.registryCreateKey(WinReg.HKEY_CLASSES_ROOT, "MIME\\Database\\Content Type\\", "application/mkd-config");
Advapi32Util.registrySetStringValue(WinReg.HKEY_CLASSES_ROOT, "MIME\\Database\\Content Type\\application/mkd-config", "Extension", ".mkd");

Поскольку я регистрировал mkdLauncher.exe в реестре Windows всякий раз, когда открываю файлы с расширением .mkd. Он использует mkdlauncher.exe для открытия файла по умолчанию.

Как я могу сделать то же самое с базовой консолью dotnet?

Я посмотрел на следующий URL:

Как добавить значение на ключ hkey_classes_root, где установлено приложение

Кажется, есть простой способ сделатьтот же самый. Но я не мог понять. Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...