Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Заблокирован

Добавление программы в автозагрузку

11.10.2015, 12:56. Показов 2137. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
добавляю так:
C#
1
2
3
var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
key.SetValue("MyProgram", Application.ExecutablePath);
key.Close();
вроде все правильно, но я упорно не нахожу это значение в Regedit-е, обновлял, закрывал, нету... что за фигня такая?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.10.2015, 12:56
Ответы с готовыми решениями:

Добавление программы в автозагрузку.
Очень надо=)

Добавление в автозагрузку!
Реализовал так, но почему-то не добавляется в автозагрузку... Подскажите, буду благодарен, в чём ошибка моего кода? string path =...

Неправильное добавление в автозагрузку
Есть программа (prog1), которая добавляет в автозагрузку другую программу (prog2) следующим образом: string ExePath =...

11
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
11.10.2015, 13:34
Volrajas, возможно, программе не хватает прав для записи в HKEY_LOCAL_MACHINE. Попробуйте записывать ключ в раздел HKEY_CURRENT_USER, но программа будет запускаться только при входе текущего пользователя.
1
Заблокирован
11.10.2015, 13:45  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
возможно, программе не хватает прав для записи в HKEY_LOCAL_MACHINE.
щас даже от администратора попробовал запускать, все равно не добавляет
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Попробуйте записывать ключ в раздел HKEY_CURRENT_USER, но программа будет запускаться только при входе текущего пользователя.
а вот так добавило, странно...
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
11.10.2015, 13:57
Цитата Сообщение от Volrajas Посмотреть сообщение
а вот так добавило, странно...
Ничего странного, для записи в этот раздел нужно намного меньше привилегий.
0
Заблокирован
11.10.2015, 13:58  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Ничего странного, для записи в этот раздел нужно намного меньше привилегий.
но почему даже от админа не пишет в тот раздел? вот что странно
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
11.10.2015, 14:08
Цитата Сообщение от Volrajas Посмотреть сообщение
но почему даже от админа не пишет в тот раздел?
Даже у админа не все права в наличии. Можно попробовать добавить в App.config следующую строку
XML
1
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Программа попросит разрешения для действий, на которые не хватает привилегий.
0
Заблокирован
11.10.2015, 14:15  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Даже у админа не все права в наличии.
но ведь меняю же я от админа из regedit-а реестр вручную
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Программа попросит разрешения для действий, на которые не хватает привилегий.
чет ниче не изменилось
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18282 / 14205 / 5368
Регистрация: 17.03.2014
Сообщений: 28,884
Записей в блоге: 1
11.10.2015, 14:49
Volrajas, посмотри в ветке SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run. Записывать же нужно так:
C#
1
2
3
4
5
using (var baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
using (var key = baseKey.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true))
{
    key.SetValue("MyProgram", Application.ExecutablePath);
}
2
Заблокирован
11.10.2015, 14:57  [ТС]
OwenGlendower, хм это будет работать только в 64х битной винде?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18282 / 14205 / 5368
Регистрация: 17.03.2014
Сообщений: 28,884
Записей в блоге: 1
11.10.2015, 15:07
Volrajas, должно работать одинаково хорошо и на x86 и на x64.
0
Заблокирован
11.10.2015, 15:21  [ТС]
OwenGlendower, а почему же тогда там везде 64?
Цитата Сообщение от OwenGlendower Посмотреть сообщение
RegistryView.Registry64
да и что это за ветка такая?
Цитата Сообщение от OwenGlendower Посмотреть сообщение
посмотри в ветке SOFTWARE\Wow6432Node
я думал автозагрузка только в одной ветке есть...

Добавлено через 10 минут
OwenGlendower, ладно протестил, записывает действительно, правда не в
Цитата Сообщение от OwenGlendower Посмотреть сообщение
SOFTWARE\Wow6432Node\Microsoft\Windows\C urrentVersion\Run
а все также в
Цитата Сообщение от OwenGlendower Посмотреть сообщение
SOFTWARE\Microsoft\Windows\CurrentVersio n\Run
и все таки меня не оставляет ощущение что на 32х битной системе работать это не будет, жаль негде проверить
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18282 / 14205 / 5368
Регистрация: 17.03.2014
Сообщений: 28,884
Записей в блоге: 1
11.10.2015, 23:24
Цитата Сообщение от Volrajas Посмотреть сообщение
да и что это за ветка такая?
32 битовые процессы на x64 Windows выполняются под эмулятором. В рамках этой эмуляции ОС выполняет т.н. виртуализацию частей реестра и файловой системы. Ключ HKLM\Software является одни из таких ключей. Операции чтения/записи незаметно для приложения направляются в ветку HKLM\Software\Wow6432Node. Перечисление RegistryView позволяет включать/выключать виртуализацию для отдельных операций. Значение RegistryView.Registry64 означает что виртуализацию использовать не надо. Если запутстить приложение на x86 Windows где виртуализации нет, то это значение игнорируется.

Цитата Сообщение от Volrajas Посмотреть сообщение
я думал автозагрузка только в одной ветке есть...
Тогда советую никогда не пользоваться программой autoruns иначе тебя ждет разрыв шаблона.

Цитата Сообщение от Volrajas Посмотреть сообщение
ладно протестил, записывает действительно, правда не в Wow6432Node
Я говорил куда твой код записывает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.10.2015, 23:24
Помогаю со студенческими работами здесь

Установщик программы с возможностью добавления в автозагрузку
Добрый день! Пишу проект на VS2010. WPF-окно с привязкой к базе данных, которое регулярно проверяет наличие заявок на работы в...

Запуск программы при старте компьютера (не через автозагрузку)
Мне нужно что бы программа запускалась при старте компьютера но не через автозагрузку. У меня была идея сделать так что бы программа...

Добавление в автозагрузку
Здравствуйте! Подскажите, как добавить мое приложение в реестр в автозагрузку?

Добавление ярлыка в автозагрузку
Здравствуйте, добавляю свою программу в автозагрузку таким способом: public bool SetAutorunValue(bool autorun) { ...

Добавление программы в автозапуск
Здравствуйте, добавляю свою программу в автозапуск, а она не запускается при включении Windows. Добавляю через реестр. Пробовал и в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru