Delphi автозапуск с windows

Delphi автозапуск с windows

В этом небольшом уроке я покажу, как добавить свою программу в автозапуск. В Windows, чтобы добавить программу в автозапуск необходимо обратиться к реестру, ведь именно там хранится список программ, которые операционная система запустит автоматически после ее загрузки.

Существует 2 типа автозапуска:

  • Программа будет запускаться каждый раз при запуске Windows (Run)
  • Программа запуститься только один раз при запуске Windows и больше автоматически запускаться не будет, пока ей снова не назначат автозапуск (RunOnce)

Я уже отметил, что для добавления программы в автозапуск, нужно обращаться к реестру, поэтому в раздел uses добавим модуль registry. Создадим глобальную переменную reg: TRegistry. Через нее мы и будем обращаться к реестру.

Для добавления программы в постоянный автозапуск (Run) можно использовать следующий код:

[cc lang=»delphi»]reg := TRegistry.Create();
reg.RootKey := HKEY_LOCAL_MACHINE;

if reg.OpenKey(‘Software\Microsoft\Windows\CurrentVersion\Run’, True) then
begin
reg.WriteString( Application.Title, Application.ExeName);
reg.CloseKey();
end;[/cc]

Для удаления программы из постоянного автозапуска можно использовать код:

[cc lang=»delphi»]reg := TRegistry.Create();
reg.RootKey := HKEY_LOCAL_MACHINE;

if reg.OpenKey(‘Software\Microsoft\Windows\CurrentVersion\Run’, False)
then
begin
reg.DeleteValue( Application.Title );
reg.CloseKey();
end;[/cc]

Для добавления программы в одноразовый автозапуск (RunOnce) используем код:

[cc lang=»delphi»]reg := TRegistry.Create();
reg.RootKey := HKEY_LOCAL_MACHINE;

if reg.OpenKey(‘Software\Microsoft\Windows\CurrentVersion\RunOnce’, True)
then
begin
reg.WriteString( Application.Title, Application.ExeName);
reg.CloseKey();
end;[/cc]

А для удаления программы из одноразового автозапуска:

[cc lang=»delphi»]reg := TRegistry.Create();
reg.RootKey := HKEY_LOCAL_MACHINE;

if reg.OpenKey(‘Software\Microsoft\Windows\CurrentVersion\RunOnce’, False)
then
begin
reg.DeleteValue( Application.Title );
reg.CloseKey();
end;[/cc]

Также можно проверить наличие программы в автозапуске при помощи кода:

[cc lang=»delphi»]reg := TRegistry.Create();
reg.RootKey := HKEY_LOCAL_MACHINE;
if reg.OpenKey(‘Software\Microsoft\Windows\CurrentVersion\Run’ <для одноразового автозапуска вместо Run ставим RunOnce>, False) then begin
if reg.ValueExists(Application.Title) then
begin
// программа есть в автозапуске
end;
reg.CloseKey();
end;[/cc]

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

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

Помогите сделать автозагрузку программы при включении копмьютера пожалуйста
я в uses добавил RegisTry
И написал этот код

На моём копме при включении запускается программа, а на других нет, в чём может быть проблема?

За ранее спасибо

Движение button при старте программы
Сообразил себе калькулятор кое-как. Теперь хотелось бы анимировать какую-нибудь button. Говорили.

Читайте также:  Windows ce навигатор настройка

Автозапуск программы
Тема избитая уже Исходников много — знаю Но я столкнулся с такой проблемой, что программа.

Считывание пароля для .mdb из файла при старте программы
Всем доброго времени суток. Помогите решить проблему со считыванием пароля из файла для базы.

Автозапуск программы при старте Windows
Помогите сделать автозагрузку программы при включении копмьютера пожалуйста я в uses добавил.

troffy, во первых, подозреваю, что этот код и не выполнялся на других машинах.
во-вторых — не лезьте в Local Machine, у большинства юзеров WIndows 7 не пускает в этот раздел без прав администратора

Добавлено через 32 минуты

Комментарий модератора
troffy, ты правила форума читал?
Дубли тем запрещаются. Советую прочитать правила, а то так и до бани недалеко!
Автозапуск программы при старте Windows

Вложения

ITask.rar (11.7 Кб, 133 просмотров)

r@di0, а не проще ли этому новичку тупо в раздел HKey_Curren_User записать свою прогу?

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

Реестр: добавление программы в автозапуск при первом старте
написал такой кодик: var r:tregistry; begin r:=tregistry.Create; r.RootKey:=HKEY_LOCAL_MACHINE;.

Событие при старте программы
Запуск кода при запуске пограммы ? Как называется продцедура ссылающаяся на событие при загрузке.

Запуск процедуры при старте программы
Добрый день! Подскажите как запустить процедуру при запуске программы? Суть программы проста -.

Выполнение алгоритма при старте программы
Имеется программа Форма, на ней ЛистБокс, статусбар, пару прогрессбаров. Хочется чтоб при.

Автозагрузка в Delphi (исходники)

Очень часто программы прописывают себя в автозагрузку. Зачем это нужно? Да, в общем-то, цели разные. Иногда бывает нужно, чтобы программа грузилась вместе с операционной системой, например, как электронный органайзер. Или если вы пишите троян или вирус — это тоже может пригодиться. Цели разные и способы тоже. Мы рассмотрим самые популярные способы. В принципе стандартным способом автозагрузки в Windows XP является реестр. Если говорить по конкретней, то ключ HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run. Именно сюда прописывается большинство программ. Прописать сюда свою программу очень просто, делается это так:

var Reg:TRegistry;
begin
Reg:=TRegIniFile.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey(‘Software’,true);
Reg.OpenKey(‘Microsoft’,true);
Reg.OpenKey(‘Windows’,true);
Reg.OpenKey(‘CurrentVersion’,true);
Reg.OpenKey(‘Run’,true);
Reg.WriteString(‘Здесь пишем что угодно, как правило имя проги’,Application.ExeName);
Reg.CloseKey;
Reg.Free;

Код очень простой и не должен вызвать каких-либо трудностей, если вы работали с реестром. Кстати, не забудьте добавить в раздел uses модуль Registry для работы с реестром. Между прочим, необязательно добавлять программу именно в Run, ведь еще есть RunOnce и RunOnceEx . Еще пункт Run присутствует в ключе HKEY_CURRENT_USER . Ну, думаю с реестром все понятно, давайте рассмотрим следующий вариант. Это win.in . Чем он хорош, да тем, что о нем не каждый юзер знает, или знает, но все же не смотрит, а значит туда можно вбивать свои пакостные программы. Еще одним плюсом win.in является полная совместимость с Windows 9х. А это дополнительное преимущество. Для начала добавьте в uses модуль inifiles, а не то проект просто не откомпилируется. Ну и запишем следующий код:

var Win:TIniFile;
warn:string;
begin
Win:=TIniFile.Create(‘Win.ini’);
Win.ReadString(‘windows’,’run’,warn);
if warn<>Application.ExeName then
Win.WriteString(‘windows’, ‘run’,Application.ExeName);
Win.Free;

Теперь я объясню, что здесь происходит. В разделе var мы объявили две переменных Win типа TIniFile и warn типа строка. В первой строке кода (после ключевого слова begin) мы открываем файл. Далее читаем его параметр run. Если наша объявленная строка неравна приложению, то записываем вместо этой строки наше приложение. Освобождаем память. Как видите все очень просто. В принципе, все это, конечно, хорошо. Но как удалить программу из автозагрузки. Здесь просто нужно вместо строки Win.WriteString(‘windows’, ‘run’,Application.ExeName); вставить строку удаления автозапуска Win.Delete(‘windows’, ‘run’,Application.ExeName); Вот исходник удаления из автозапуска:

var Win:TIniFile;
warn:string;
begin Win:=TIniFile.Create(‘Win.ini’);
Win.ReadString(‘windows’,’run’,warn);
if warn=Application.ExeName then Win.Delete(‘windows’, ‘run’,Application.ExeName);
Win.Free;

C кодом я думаю все должно быть понятно. Это все, что я хотел рассказать про автозагрузку и, думаю, что вам этого вполне хватит.

11.16 Автозапуск приложений стр.1

Delphi site: daily Delphi-news, documentation, articles, review, interview, computer humor.

Некоторые приложения, постоянно работающие в фоновом режиме, целесообразно запускать автоматически одновременно с Windows. Сведения об автоматически запускаемых приложениях хранятся в реестре в ключе HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run. Каждый параметр этого ключа содержит в качестве имени название программы, а в качестве значения — полное имя файла программы.

Посмотрим, как можно реализовать автозапуск приложения на примере содержащегося на диске, приложенном к книге, приложения HotKeyl (каталог Keyboard). Это приложение, регистрирующее горячие клавиши, подробно оцисано в разд. 12.2.5. Окно приложение показано в том же разделе на рис. 12.7. В нижней части этого окна находится индикатор Открывать вместе с Windows, который позволяет управлять автозапуском приложения. Если этот индикатор включить, приложение автоматически будет запускаться при каждой загрузке Windows. Если выключить индикатор, автозапуск отменится. Рассмотрим коды этого приложения, связанные с организацией автозапуска:

Процедура CheckBoxlClick является обработчиком щелчка на индикаторе. В ней создается временный объект registr, соединяется с требуемым ключом, и в зависимости от того, включен или выключен индикатор, в реестр включается или из реестра удаляется параметр, название которого совпадает с именем приложения. Значение параметра — полное имя приложения, получаемое функцией ParamStr(O).

Отметим одну особенность автозапуска. При автоматическом запуске приложения текущим является не тот каталог, в котором расположен файл программы, а каталог автозапуска Windows. Иногда это надо учитывать в приложении. Например, вариант приложения, описанный в разд. 12.2.5, содержит оператор

который формирует имя текстового файла, используемого в приложении, из этого имени, первоначально запомненного в переменной SFile, и текущего каталога, получаемого функцией GetCurrentDir. Но при автозапуске это оператор сформирует ошибочное имя файла. Поэтому в полном варианте приложения этот оператор заменен следующим:

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

Имеется еще один вариант автозапуска приложения — однократный запуск. Он применяется, в частности, в программах установки и иных программах, работающих с Windows, когда требуется перезагрузка системы для того, чтобы вступили в силу установленные параметры. После перезагрузки управление сразу должно быть передано той же программе.

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

Как добавить программу в автозапуск?
Привет можете подсказать как решить проблему. Вот код прописи в автозапуск: reg:=.

Прописать программу в реестр(автозапуск)
как прописать программу в реестр? если можно,то код для подмены explorer.exe и с его возвращением.

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

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

запятую то я сразу убрал, но всёравно не работает

Добавлено через 1 минуту

Добавлено через 2 минуты
всё, исправил, ошибка была в другой части программы

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

Как добавить программу в автозапуск?
Здравствуйте ребята! Не подскажите, как можно программно добавить мою программу в автозапуск.

Как добавить программу в Автозапуск
Как добавить программу в Автозапуск?

Как добавить программу в автозапуск?
как добавить программу в автозапуск в реестре в HKEY_CURRENT_USER?

Как добавить программу в автозапуск?
Подскажите команду которая бы поставило приложение в Win на автозапуск? Код типа: if (/*стоит ли.

Читайте также:  Некоторые параметры скрыты или управляются вашей организацией windows 10 ltsc
Оцените статью