Автозагрузка программы при старте Windows

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Автозагрузка программы при старте Windows

Сообщение vi-kar » 06.05.2008 (Вт) 13:03

Помогите пожалуйста найти решение моей задачи!

Нужно сделать что бы программа сама запускалась при старте
системы, не важно будет это происходить через пуск-программы-
автозагрузка или реестр, главное что бы запускалась. И еще важно
при необходимости ее от туда удалить, например если программа
будет удалена или в настройках программы будет выключен флажок
автозагрузки.

Программу как уже понятно пишу на .NET (в VS2005)

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 07.05.2008 (Ср) 9:04

Решение задачки нашел в этом же форуме, сейчас буду пробовать!

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 07.05.2008 (Ср) 10:39

Все таки возник один вопросик.
Есть такой код
Код: Выделить всё

If lines(1) = "off" Then

chkAutoload.Checked = False
Dim RK As Microsoft.Win32.RegistryKey
RK = My.Computer.Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run\", True)
RK.DeleteValue("Filenetcapture")

Else

chkAutoload.Checked = True
My.Computer.Registry.CurrentUser.CreateSubKey("Software\Microsoft\Windows\CurrentVersion\Run\Filenetcapture")
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "Filenetcapture", Application.ExecutablePath)

End If


Как проверить, существует ли ключ Filenetcapture в реестре, перед тем как его удалить?

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 07.05.2008 (Ср) 21:02

Тебе ж при старте системы надо? А этот прмер только после авторизации пользователя заработает.

используй назначенные задания. програмно Win32_SchedulerJob
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 08.05.2008 (Чт) 6:48

Sebas, ты прав, я не много ошибся, нужно что бы программа запускалась после авторизации пользователя (если я правильно понимаю, то это так как я показал в коде выше), но нужно что бы пользователь, если захочет, удалил программно ключ из реестра, но перед этим мне нужно сделать проверку, вдруг ключа уже не существует, вот как мне сделать проверку?

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Сообщение Williams » 11.05.2008 (Вс) 21:28

Открытие ключа возвращает Nothing в случае его отсутствия.



myRegKey = Registry._ветка_.OpenSubKey (_ключ_)

If myRegKey is Nothing

MsgBox ("Ключа не существует")

End If



Или:

If Not myRegKey is Nothing Then

...удаляем ключ...

End If

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 12.05.2008 (Пн) 0:18

Спасибо! Буду пробовать...

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 13.05.2008 (Вт) 13:54

Вместо проверки сделал так:
чтобы удалить ключ я его сначала добавляю а потом уже удаляю, так даже проще чем с проверкой - которой у меня не получилось сделать

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 13.05.2008 (Вт) 15:57

[b]vi-kar[/] :D не самое удачно решение

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Сообщение Williams » 14.05.2008 (Ср) 1:10

vi-kar

что именно не получилось?

vi-kar
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 06.05.2008 (Вт) 12:56
Откуда: :Благовещенск

Сообщение vi-kar » 14.05.2008 (Ср) 6:19

Williams писал(а):vi-kar
что именно не получилось?


Не получилось сделать проверку существования ключа в реестре, поэтому я сделал что бы он (ключ) сначала добавился а потом удалился


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 93

    TopList