Помогите с автозагрузкой

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
killerb
Новичок
Новичок
 
Сообщения: 43
Зарегистрирован: 27.01.2005 (Чт) 23:08
Откуда: Днепропетровск

Помогите с автозагрузкой

Сообщение killerb » 27.01.2005 (Чт) 23:14

Пожалуйста подскажите как сделать, чтобы программа сама создавала свой ярлык в папке ПУСК-ПРОГРАММЫ-АВТОЗАГРУЗКА-ИмяФайла. Проблема состоит в том, что я не знаю как получить :
1. Название ОСи
2. Диска, на котором она стоит
3. Имя пользователя
Заранее благодарен за ответы.
Жизнь - это карусель, на которой никому не дано удержаться надолго. Стивен Кинг

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 28.01.2005 (Пт) 0:12


A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 28.01.2005 (Пт) 0:14

Попробуй
Код: Выделить всё
Environ("ALLUSERSPROFILE") & "\Главное меню\Программы\Автозагрузка"

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 28.01.2005 (Пт) 0:15

Тьфу :(

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 28.01.2005 (Пт) 7:25

A.A.Z. писал(а):Попробуй
Код: Выделить всё
Environ("ALLUSERSPROFILE") & "\Главное меню\Программы\Автозагрузка"

А в нерусских виндах?

Тогда уж SHGetSpecialFolderPath с CSIDL_STARTUP
Изображение

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

Re: Помогите с автозагрузкой

Сообщение Ramzes » 28.01.2005 (Пт) 11:27

killerb писал(а):Пожалуйста подскажите как сделать, чтобы программа сама создавала свой ярлык в папке ПУСК-ПРОГРАММЫ-АВТОЗАГРУЗКА-ИмяФайла. Проблема состоит в том, что я не знаю как получить :
1. Название ОСи
2. Диска, на котором она стоит
3. Имя пользователя
Заранее благодарен за ответы.


Может тебе прогу в автозагрузку закинуть надо??

Код: Выделить всё
'Декларация
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long


'Добавить ссылку
Private Sub AddToStartup(ByVal sDesc As String, ByVal sFile As String)
Dim lRegKey As Long
RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", lRegKey
If lRegKey Then
RegSetValueEx lRegKey, sDesc, 0, 1, ByVal sFile, Len(sApp)
RegCloseKey lRegKey
End If
End Sub

'Удалить ссылку
Private Function DeleteAtStartup(ByVal strValue As String)
Dim keyhand As Long
r = RegOpenKey(HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", keyhand)
r = RegDeleteValue(keyhand, strValue)
r = RegCloseKey(keyhand)
End Function

'Код
Private Sub Command1_Click()
AddToStartup "Моё приложение", App.Path & App.EXEName & ".exe"
End Sub
Private Sub Command2_Click()
DeleteAtStartup "Моё приложение"
End Sub




Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: Yandex-бот и гости: 9

    TopList