- Новый проект
- Консольное приложение (.NET Core)
- Укажите детали нового проекта и нажмите кнопку «Создать».
- Добавьте Microsoft.Win32.Registry NuGet пакет в проект
- Добавьте следующий код:
Код: Выделить всё
using Microsoft.Win32;
using System;
namespace Key_Statistics_Startup_Changer {
class Program {
static void Main(string[] args) {
if (args[0] == "CREATE_STARTUP") {
RegistryKey rkey = Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run");
rkey.SetValue("Key Statistics", @"C:\Program Files\Key Statistics\Key Statistics.exe");
}
else if (args[0] == "REMOVE_STARTUP") {
RegistryKey rkey = Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run");
rkey.DeleteValue("Key Statistics");
}
}
}
}
- Сборка и запуск проекта
Когда я это делаю, программа создает или удаляет нужный реестр при запуске (то, что пытается выполнить код), когда я ввожу аргументы через Визуальная студия. Однако при сборке этого проекта в моей папке Key Статистика Startup Changer\bin\Debug появляется подкаталог netcoreapp2.1 со следующими файлами:
Ключевая статистика Startup Changer.deps.json
Ключевая статистика Startup Changer.dll
Ключевая статистика Startup Changer.pdb
Ключевая статистика Startup Changer.runtimeconfig.dev.json
Ключевая статистика Startup Changer.runtimeconfig.json
Я уверен, что у меня есть правильная папка, куда можно экспортировать, и каждый раз, когда я заново создаю шаги (убедившись, что не выбираю проект C# DLL), это происходит.
p>
В чем тут дело?
Подробнее здесь: https://stackoverflow.com/questions/560 ... ead-of-exe
Мобильная версия