Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.03.2007, 08:05   #1
steck
/\/\Et@/\|/|$T
Пользователь
 
Аватар для steck
 
Регистрация: 26.03.2007
Сообщений: 89
По умолчанию как сделать так чтоб моя прога при запуске о.с. стартовала

как сделать так чтобы моя прога при загрузке О.С стартовала и ещё пробовал из списка Ctrl+alt+del скрывать но чёто не получается ?,в чём здесь ошибка, пишет что kernel32.dll подобратся не может в общем вот код:
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer; stdcall; external 'KERNEL32.DLL';

implementation

procedure TForm1.Button1Click(Sender: TObject);
begin //Скрываем
if not (csDesigning in ComponentState) then
RegisterServiceProcess(GetCurrentPr ocessID, 1);
end;
there are no programmers there is no life
steck вне форума Ответить с цитированием
Старый 28.03.2007, 09:18   #2
juden
Пользователь
 
Аватар для juden
 
Регистрация: 28.03.2007
Сообщений: 67
По умолчанию

кинь ярлык своей проги в автозагрузку
а если хош чтоб была не видна:
procedure TForm1.FormCreate(Sender: TObject);
begin
if not(csDesigning in ComponentState) then
RegisterServiceProcess(GetCurrentPr ocessID, 1);
end;
Проблема не в том могут ли машины думать, а в том - делают ли это люди?
B. F. Skinner
juden вне форума Ответить с цитированием
Старый 28.03.2007, 09:25   #3
steck
/\/\Et@/\|/|$T
Пользователь
 
Аватар для steck
 
Регистрация: 26.03.2007
Сообщений: 89
По умолчанию

да нет нето я пишу вирус вот стоит он на другом компе и ему надо при старте системы запускатся пример дал мне пацан вирус я его запустил и в последущих загрезках О.С он стартовал а с автозагрузкой на другом компе не получится думаю надо с реестром чёто делать и блин ис процесов не скрывается ты дал мне тот же код чтож делать
there are no programmers there is no life

Последний раз редактировалось steck; 28.03.2007 в 09:36.
steck вне форума Ответить с цитированием
Старый 28.03.2007, 09:40   #4
execom
Редкий тунеядец
Форумчанин
 
Аватар для execom
 
Регистрация: 29.10.2006
Сообщений: 595
По умолчанию

Цитата:
как сделать так чтобы моя прога при загрузке О.С стартовала
Знаете, Уважаемый, какой самый замызганый врпрос!? Именно этот!
Ну неужели нельзя приложить минимальные усилия на поиски ответа?

В системах но NT достаточно актуально можно было попасть в автозагрузку дописав себя в файлы win.ini или system.ini! В NT этот способ потерял актуальность! Поэтому для ХР-шки лучше прописаться в реестре! Благо для этого в реестре мест предостаточно!
Разберёмся поподробней:
Локальная автозагрузка (т.е. только для текущего пользователя!)
HKEY_LOCAL_MACHINE\SOFTWARE\Microso ft\Windows\CurrentVersion\Run - обычная
HKEY_LOCAL_MACHINE\SOFTWARE\Microso ft\Windows\CurrentVersion\RunOnce - Однокракная (т.е. после первого запуска ключь удаляется, чаще всего используется унсталяшками, для завершения установки!)
HKEY_LOCAL_MACHINE\SOFTWARE\Microso ft\Windows\CurrentVersion\RunOnceEx - Однократная (для служб)

Глобальная автозагрузка! (т.е. для всех пользователей!)
HKEY_CURRENT_USER\Software\Microsof t\Windows\CurrentVersion\Run - Общая (глобальная)
HKEY_CURRENT_USER\Software\Microsof t\Windows\CurrentVersion\RunOnce - однократная (глобальная)
execom вне форума Ответить с цитированием
Старый 28.03.2007, 12:53   #5
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Вообще то этому посвящена книга в клубе программистов от Хакер та все подробно описывается.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 29.03.2007, 20:13   #6
Kostyan
Пользователь
 
Аватар для Kostyan
 
Регистрация: 25.03.2007
Сообщений: 18
По умолчанию

Можно прогу сделать службой, тогда в диспетчере задач процесс отображаться не будет
Kostyan вне форума Ответить с цитированием
Старый 30.03.2007, 10:58   #7
VVVadim
Пользователь Подтвердите свой е-майл
 
Аватар для VVVadim
 
Регистрация: 28.03.2007
Сообщений: 60
По умолчанию

копируется в системный каталог и из него запускается, если не надо копировать, то убери переменную а, строчку CopyFile ...., поменяй в i.WriteString ... а на Application.ExeName (не забудь подключить Registry)

procedure TForm1.FormCreate(Sender: TObject);
var i:Tregistry;
path:array[0..144] of Char;
a:string;
begin
GetWindowsDirectory(path,sizeof(pat h));
a:=StrPas(path)+'\'+'zzz.exe';
CopyFile(PChar(Application.ExeName) ,PChar(a),true);
i:=Tregistry.Create;
i.RootKey:=HKEY_LOCAL_MACHINE;
i.LazyWrite:=false;
i.OpenKey('Software\Microsoft\Windo ws\CurrentVersion\Run',false);
i.WriteString('My App',a);
i.CloseKey;
i.Free;
end;
VVVadim вне форума Ответить с цитированием
Старый 30.03.2007, 15:58   #8
ЧИЖ
Форумчанин
 
Аватар для ЧИЖ
 
Регистрация: 24.02.2007
Сообщений: 104
Радость

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

uses ...........; registry;

var ................;
reg:treginifile;
.......................

reg:=treginifile.create('software') ;
reg.openkey('microsoft',true);
reg.openkey('windows',true);
reg.openkey('currentversion',true);
reg.writestring('run','name','filen ame');
reg.free;


вместо name пишешь че хочешь это имя параметра,
вместо filename пишешь путь к проге.
Разберемся.......

Последний раз редактировалось ЧИЖ; 30.03.2007 в 21:53.
ЧИЖ вне форума Ответить с цитированием
Старый 01.04.2007, 09:50   #9
steck
/\/\Et@/\|/|$T
Пользователь
 
Аватар для steck
 
Регистрация: 26.03.2007
Сообщений: 89
По умолчанию спасибо большое

Цитата:
Сообщение от ЧИЖ Посмотреть сообщение
ну вообще вирус - это не хорошо и прога (отдельная это не вирус),
но если считать что ты пишешь (скорее всего) программу - шутку то подсказать можно:

uses ...........; registry;

var ................;
reg:treginifile;
.......................

reg:=treginifile.create('software') ;
reg.openkey('microsoft',true);
reg.openkey('windows',true);
reg.openkey('currentversion',true);
reg.writestring('run','name','filen ame');
reg.free;


вместо name пишешь че хочешь это имя параметра,
вместо filename пишешь путь к проге.
спасибо господа умные программисты вобщеб получилось я скорее пишу шутку а не вирус
there are no programmers there is no life
steck вне форума Ответить с цитированием
Старый 01.04.2007, 15:48   #10
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Цитата:
Сообщение от steck Посмотреть сообщение
,в чём здесь ошибка, пишет что kernel32.dll подобратся не может в общем вот код:
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer; stdcall; external 'KERNEL32.DLL';

implementation

procedure TForm1.Button1Click(Sender: TObject);
begin //Скрываем
if not (csDesigning in ComponentState) then
RegisterServiceProcess(GetCurrentPr ocessID, 1);
end;
уже сколько раз эта тема поднималась, эта функция есть только в Win9x, забудь про неё!!!!
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать чтоб картинки менялись? Kaktys v tymane Помощь студентам 1 09.05.2008 00:53
Help КАк сделать чтоб Приложение delphi запускалось fullScreen Saggitarius Помощь студентам 5 15.12.2007 16:30
как указать в коде пути к файлу1 и файлу2, чтоб не вводить их при запуске из консоли? bloood Общие вопросы C/C++ 4 23.10.2007 20:02
Как сделать программу чтоб отсылала файл по FTP. Kenifer Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 15.08.2007 20:58