У меня есть консольное приложение, написанное на VB.Net. Все, что я хочу, это чтобы он запускался автоматически при запуске компьютера.
5 ответов
Вы можете просто добавить его в папку «Автозагрузка» в меню «Пуск» в Windows, и он запустится вместе с компьютером.
Создать запись в реестре под
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
- Запустите regedit.exe
- Перейдите к HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
- Создайте новое строковое значение и присвойте ему название, которое вам нужно (это только для вас, чтобы помнить, что это такое)
- Задайте значение полного пути (и параметров) EXE-файла, который вы хотите запустить.
Я бы настроил его в планировщике задач, запустил планировщик из панели управления / административных инструментов, создал новую задачу и установил триггер "Когда компьютер запускается".
Или вы можете сделать это в вашей программе установки или написать код с помощью Microsoft.Win32.TaskScheduler.dll, который запускается в программе установки.
Самый простой способ добиться этого - преобразовать консольное приложение в службу Windows.
Однако вы можете посмотреть Запланированные задачи и посмотреть, есть ли возможность запустить приложение при запуске компьютера.
Я думаю, что вопрос здесь заключается в том, как программист, как заставить программу автоматически запускаться самостоятельно, когда компьютер запускается, как антивирусные программы, которые автоматически запускаются, когда пользователь вошел в систему на своем компьютере.
Я также ищу такой же ответ, как и код для программы Автозапуск, которую компьютер прочитает, а затем запустит программу.
Если вы пользователь vb.net, вот строка кода, которую мне удалось написать, чтобы автоматически писать и сохранять автозапуск на компьютере.
Во-первых, вам нужно будет найти правильное место или каталог, в котором компьютер будет искать автозапуск, и если вы ориентируетесь на пользователей, которые используют Windows XP, каталог будет просто диск "C". Вы также должны проверить, есть ли уже автозапуск, потому что компьютер не будет хранить два одинаковых файла. Поэтому, если есть автозапуск, вам просто нужно отредактировать его и помнить, что уже запущенный автозапуск сохраняется для другой программы. Вам не нужно удалять или переопределять его, потому что программа, которая его использует, не будет автоматически запускаться.
В вашем коде на form_load вы сначала должны проверить, существует ли автозапуск или нет, так что вот как вы это делаете. Помните, эти коды будут идти под Form_load
Private Sub Form1_Load()
If my.computer.filesystems.fileExist("C:\autorun.inf") Then
Dim auto-run As String()
auto-run = vbCrl & "[autorun]" & vbCrl & "icon=your icon.ico" & vb Crl & "open=your application name.exe" & vbCrl & "action=Run" & vbCrl & "shell\open\command=your location when your application will or is installed at.exe[autorun]"
NB: весь код выше вы пишете в одну строку, чтобы предотвратить ошибки. Теперь вам нужно написать это здесь. Я предположил, что на диске C есть автозапуск, так что давайте продолжим редактировать его.
my.computer.Filesystems.writeAllText("C:\autorun.inf",auto-run,True)
Else
If my.computer.filesystems.FileExist("C:\done.txt") Then
' Do nothing
Else
my.computer.Filesystems.writeAllText("C:\autorun.inf",auto-run,True)
my.computer.Filesystems.writeAllText("C:\done.txt","Autorun created",True)
End If
End If
End Sub
Это код, но помните, что на других компьютерах вашей программе потребуются разрешения на чтение и запись на диск, поэтому вы должны предоставить своей программе те же разрешения, что и в кодах.
Мы также проверяем, был ли создан автозапуск. Если он был создан, мы не позволяем программе всегда создавать автозапуск, потому что это запутает наш автозапуск. Так что это будет просто написать только один раз.
Обратите внимание, что это не поддерживается в Windows 7, поэтому я все еще пытаюсь изобрести новый способ или получить новый способ. Я думаю, что ответ Иисуса г является лучшим ответом, если вы используете или ориентируетесь на Windows 7 или 8.
Лучший способ автоматически выполнить ответ Иисуса R - это сначала узнать каталог Default папки Startup. Затем, когда вы создаете мастер установки, вы просто указываете ему сохранить вашу программу в папке «Автозагрузка».