Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55

Добавить программу в автозагрузку

29.04.2014, 18:54. Показов 2497. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как добавить *.exe программу на автозагрузку Windows? ну естественно чтоб она и на другом компьютере при загрузке Windows запускалась.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.04.2014, 18:54
Ответы с готовыми решениями:

Добавить программу в автозагрузку
Оч интересно

Как поместить программу в автозагрузку?
Как поместить программу ( на Visual Basic'е) в Автозагрузку, чтобы она запустилась первее всех. Пожалуйста скиньте ( если можно ) на...

Как записать программу в Автозагрузку на Windows 7
Народ помогите, очень надо! В интернете искал, ничего нет дельного!!!!!!!!!!!!!!!!!!!!!!!

17
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
29.04.2014, 20:55
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Добавить в реестр ключик автозагрузки.


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Private Const READ_CONTROL = &H20000
Private Const STANDARD_RIGHTS_READ = (READ_CONTROL)
Private Const KEY_QUERY_VALUE = &H1
Private Const KEY_ENUMERATE_SUB_KEYS = &H8
Private Const KEY_NOTIFY = &H10
Private Const SYNCHRONIZE = &H100000
Private Const STANDARD_RIGHTS_WRITE = (READ_CONTROL)
Private Const KEY_SET_VALUE = &H2
Private Const KEY_CREATE_SUB_KEY = &H4
Private Const KEY_READ = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or _
              KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))
Private Const KEY_WRITE = ((STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or _
              KEY_CREATE_SUB_KEY) And (Not SYNCHRONIZE))
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Const ERROR_SUCCESS = 0&
Private Const REG_SZ = 1                         ' Unicode nul terminated string
 
Private Declare Function RegCloseKey Lib "advapi32.dll" _
        (ByVal hKey As Long) As Long
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias _
        "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, _
        ByVal ulOptions As Long, ByVal samDesired As Long, _
        phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias _
        "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, _
        ByVal lpReserved As Long, lpType As Long, lpData As Any, _
        lpcbData 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 Command1_Click()
'The following code will create the registry entry:
    Dim hKey As Long, aData As String, lSize As Long
    If RegOpenKeyEx(HKEY_LOCAL_MACHINE, _
       "software\microsoft\windows\currentversion\run", 0, _
       KEY_WRITE, hKey) = ERROR_SUCCESS Then
        aData = "c:\myprog.exe"
        lSize = Len(aData)
        If RegSetValueEx(hKey, "MyApp", 0, REG_SZ, ByVal aData, _
           lSize) = ERROR_SUCCESS Then
            MsgBox aData & " written"
        End If
        RegCloseKey hKey
    End If
 
 
 
End Sub
 
Private Sub Command2_Click()
'The following code will read the registry entry:
    Dim hKey As Long, aData As String, lType As Long, lSize As Long
    If RegOpenKeyEx(HKEY_LOCAL_MACHINE, _
       "software\microsoft\windows\currentversion\run", 0, KEY_READ, _
       hKey) = ERROR_SUCCESS Then
        lSize = 128
        aData = Space$(lSize)
        If RegQueryValueEx(hKey, "MyApp", 0, lType, ByVal aData, _
           lSize) = ERROR_SUCCESS Then
            If lSize Then
                aData = Left$(aData, lSize - 1)
                MsgBox aData & " read"
            End If
        End If
        RegCloseKey hKey
    End If
End Sub
 
Private Sub Form_Load()
MsgBox " Привет, я уже здесь!!!"
'Unload Me
End Sub
Для работы нужно реальное имя программы.
2
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
29.04.2014, 21:49
Лучший ответ Сообщение было отмечено The trick как решение

Решение

А не слишком ли много букв?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub bb()
With CreateObject("WScript.Shell")
  With .CreateShortcut(.SpecialFolders("Startup") & "\MyProg.lnk")  'имя ярлыка
    .TargetPath = "c:\temp\MyProg.exe"        'путь к программе
    .HotKey = "CTRL+ALT+T"                    'опционально
    .Description = "Всплывает при наведении"  'опционально
    .IconLocation = "shell32.dll, 5"          'опционально
    .WindowStyle = 1                'опционально: 1-норм, 3-макс, 7-мин
    .WorkingDirectory = "C:\temp\"            'опционально
    .Save
  End With
End With
End Sub
2
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
29.04.2014, 22:07
xSTABLEx, вирусы пишешь?
Pro_grammer, для нормальной работы нужно вызывать W функции, благо VB нам предоставляет такую возможность изначально.
Казанский, грузить библиотеки для одной команды тоже не айс.
1
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
30.04.2014, 06:07
Цитата Сообщение от Казанский Посмотреть сообщение
не слишком ли много букв?
Если бы VB6 умел работать со всеми ветками реестра собственными функциями, то букв было бы намного меньше.

The trick, есть хоть один эффективный вирус, который грузится через ветку windows\currentversion\run?
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
30.04.2014, 08:32
Цитата Сообщение от Pro_grammer Посмотреть сообщение
The trick, есть хоть один эффективный вирус, который грузится через ветку windows\currentversion\run?
Нет.
0
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
30.04.2014, 12:03  [ТС]
The trick, да нет.. пишу программу для себя..

Добавлено через 47 минут
Pro_grammer, в строке: aData = "c:\myprog.exe", надо указывать путь к программе да? если так, то путь к этой программе скорее всего не существует на компьютере например друга.. мне нужно что-то типо App.Path или какая-нибудь другая функция..
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
30.04.2014, 12:12
Цитата Сообщение от xSTABLEx Посмотреть сообщение
App.Path
Так и надо писать:
Visual Basic
1
aData = App.Path &  "\myprog.exe"
Какая ещё другая функция?
1
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
30.04.2014, 12:20
Visual Basic
1
App.Path & "\" & App.EXEName
1
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
30.04.2014, 12:22  [ТС]
Цитата Сообщение от Pro_grammer Посмотреть сообщение
aData = App.Path & *"\myprog.exe"
Просто даже решил и не пробовать так, везде где я ставлю App.Path всегда бывает ошибка.. сейчас попробую, может не будет ошибка..
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Какая ещё другая функция?
Просто я думал что есть функция похожая на App.Path..

Добавлено через 1 минуту
The trick, попробую и твой вариант..
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
30.04.2014, 12:24
Тогда уж
Visual Basic
1
aData = App.Path & "\" & App.EXEName & ".exe"
, на случай если переименуют.
1
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
30.04.2014, 13:24  [ТС]
Спасибо всем очень помогли. Теперь у меня возник другой вопрос: мне надо чтобы после того как я ввел дату и перезагрузил компьютер, VB окно больше не всплывало, я уже ввел дату один раз и это окно мне больше не нужно, оно понадобится только после того как пройдет месяц..
Вот проект:
Вложения
Тип файла: rar Проект.rar (201.1 Кб, 15 просмотров)
0
Заблокирован
01.05.2014, 09:01
Цитата Сообщение от xSTABLEx Посмотреть сообщение
мне надо чтобы после того как я ввел дату и перезагрузил компьютер, VB окно больше не всплывало, я уже ввел дату один раз и это окно мне больше не нужно, оно понадобится только после того как пройдет месяц..
Ну так сохраняй где-нибудь в реестре эту дату. И при загрузке программы считывай дату, потом сверяй.
0
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
01.05.2014, 12:22  [ТС]
inv.DS, я еще пока не работаю с реестром, поэтому я пришел за ответом на форум..
0
Заблокирован
01.05.2014, 12:24
xSTABLEx, А тебе выше примеры показывали для чего? Или тебе не для реестра показывали?
0
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
01.05.2014, 12:37  [ТС]
inv.DS, и что? я все равно не смогу прописать в коде то что ты предложил:
Цитата Сообщение от inv.DS Посмотреть сообщение
Ну так сохраняй где-нибудь в реестре эту дату. И при загрузке программы считывай дату, потом сверяй.
Добавлено через 8 минут
думал будет не так сложно работать с реестром..
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
01.05.2014, 15:16
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Цитата Сообщение от xSTABLEx Посмотреть сообщение
думал будет не так сложно работать с реестром
В VB есть собственные средства для работы с реестром (с определенной ветвью) - SaveSetting, GetSetting, GetAllSettings, DeleteSetting.
Например Сообщение при первом запуске программы
Решение с чекбоксами
3
 Аватар для xSTABLEx
2 / 2 / 1
Регистрация: 25.01.2014
Сообщений: 55
01.05.2014, 15:31  [ТС]
Казанский, спасибо, *.INI файл для меня оказался легче чем реестр..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.05.2014, 15:31
Помогаю со студенческими работами здесь

Добавить программу в автозагрузку
Подскажите как добавить программу в автозагрузку?

Добавить программу в автозагрузку
Пишу программу хочу чтобы когда человек включил её она добавилась в автозагрузку.

Добавить программу в автозагрузку
Добавить программу в автозагрузку как такое сделать? Что бы работало

Добавить программу в автозагрузку
Подскажите, пожалуйста. Как сделать так, чтобы программа начала выполняться не при нажатии на кнопку а при ее запуске. (Меня учили...

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


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru