ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #631  
Старый 19.09.2007, 00:00
GlOFF
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме:
1845671

Репутация: 1338


По умолчанию

A2GIL http://slil.ru/24868464 - Модуль на Delphi для работы с ресурсами.

Нужно в ресурсы стаба добавить ресурс иконки и все!
 

  #632  
Старый 21.09.2007, 17:31
Killerkod
Участник форума
Регистрация: 01.08.2007
Сообщений: 178
Провел на форуме:
486104

Репутация: 239
По умолчанию

А почему через ресторатор нельзя? Ведь через него для созданного файла легче всего сменить иконку...
 

  #633  
Старый 23.09.2007, 09:39
Mkey
Новичок
Регистрация: 17.05.2007
Сообщений: 11
Провел на форуме:
84719

Репутация: 9
По умолчанию

как получить список дочерних процессов чужого приложения?
для win2000-XP
желательно с примером кода....
 

  #634  
Старый 23.09.2007, 09:43
byblik
Участник форума
Регистрация: 01.10.2006
Сообщений: 172
Провел на форуме:
1680584

Репутация: 73
По умолчанию

Нужен исходник желательно паскаль(консоль делфи) Ищет определитель матрицы, любого порядка, рекурсия. Сам плохо знаю программирование, учусь тока, написал до 4 порядка, без рекурсии. Никак немогу придумать, как же всетаки с рекурсией написать да и чтоб любого порядка можно было посчитать. Буду благадарен если кто даст исходник, если можно в ПМ.
 

  #635  
Старый 23.09.2007, 10:56
Xserg
Участник форума
Регистрация: 09.12.2006
Сообщений: 135
Провел на форуме:
426226

Репутация: 726
По умолчанию

Цитата:
Сообщение от Mkey  
как получить список дочерних процессов чужого приложения?
для win2000-XP
желательно с примером кода....
Код:
program kill;
uses windows,classes,SysUtils;
const TH32CS_SNAPPROCESS =$02;
function CreateToolhelp32Snapshot(dwFlags:DWORD;th32ProcessID:DWORD):dword;stdcall
external 'Kernel32.dll' name 'CreateToolhelp32Snapshot';
type PROCESSENTRY32=record
  dwSize: dword;
  cntUsage :DWORD;
  th32ProcessID :DWORD;
  th32DefaultHeapID :pointer;
  th32ModuleID :DWORD;
  cntThreads: DWORD;
  th32ParentProcessID:DWORD;
  pcPriClassBase :longint;
  dwFlags :DWORD;
  szExeFile:array[0..MAX_PATH] of CHAR;
                    end;
function Process32First(hSnapshot:DWORD;ENTRY32:pointer):boolean;stdcall
external 'Kernel32.dll' name 'Process32First';
function Process32Next(hSnapshot:DWORD;ENTRY32:pointer):boolean;stdcall
external 'Kernel32.dll' name 'Process32Next';

var
  st:STARTUPINFO;
  pi:PROCESS_INFORMATION;
  zp:cardinal;
  nproc:cardinal;
  pn:PROCESSENTRY32;
begin
// находим ID EXPLORER
zp:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pn.dwSize:=sizeof(pn);
Process32First(Zp,@pn);
while Process32Next(Zp,@pn) do
   if lstrcmpiA(pn.szExeFile,'EXPLORER.EXE') = 0 then begin
   nproc:=pn.th32ProcessID;break;
                                                      end;
closehandle(zp);

// кто его дети ?  (EXPLORER.EXE)
zp:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pn.dwSize:=sizeof(pn);
Process32First(Zp,@pn);
while Process32Next(Zp,@pn) do
  if pn.th32ParentProcessID=nproc  then
  messagebox(0,pn.szExeFile,Pansichar('Pid='+inttohex(pn.th32ProcessID,4)),0);
closehandle(zp);

// чей мы ребенок ?
zp:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pn.dwSize:=sizeof(pn);
Process32First(Zp,@pn);
while Process32Next(Zp,@pn) do
  if pn.th32ProcessID=GetCurrentProcessId  then begin
  messagebox(0,pn.szExeFile,Pansichar('Pid='+inttohex(pn.th32ParentProcessID,4)),0);
  //убиваем нашего родителя
  zeromemory(@st,sizeof(st));
  st.cb:=sizeof(st);
  CreateProcess(nil,Pansichar('taskkill.exe /PID '+inttostr(pn.th32ParentProcessID)),nil,nil,true,0,nil,nil,st,pi);
                                                      end;
closehandle(zp);
end.
 

  #636  
Старый 23.09.2007, 11:25
Mkey
Новичок
Регистрация: 17.05.2007
Сообщений: 11
Провел на форуме:
84719

Репутация: 9
По умолчанию

ща попробую...
 

  #637  
Старый 23.09.2007, 11:48
Mkey
Новичок
Регистрация: 17.05.2007
Сообщений: 11
Провел на форуме:
84719

Репутация: 9
По умолчанию

Xserg - спасибище!!!... 2й раз выручаешь.... + поставить не дают... готов отблагодарить материально 50рЭ на твою мобилу положу с удовольствием....
в PM номер скинь....

Последний раз редактировалось Mkey; 23.09.2007 в 11:51..
 

  #638  
Старый 23.09.2007, 12:27
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию

byblik, смотри, набросал что-то. Вроде считает, оптимизируй только
Код:
{$APPTYPE CONSOLE}

type
  TMatrix =
    record
      size: integer;
      data: array of array of integer;
    end;

var
  m: TMatrix;

function Minor(matrix: TMatrix; i,j: integer): TMatrix;
var
  a,b,a1,b1: integer;
begin
  a1 := -1;
  b1 := -1;
  result.size := matrix.size - 1;
  setlength(result.data, result.size, result.size);
  for a := 0 to result.size do
    begin
      if a=i then
        continue
      else
        inc(a1);
      for b := 0 to result.size do
        begin
          if b = j then
            continue
          else
            if b - b1 > 1 then
              inc(b1)
            else
              b1 := 0;
          result.data[a1,b1] := matrix.data[a,b];
      end;
    end;
end;

function Determ(matrix: TMatrix): integer;
var
  i: integer;
begin
  result := 0;
  if matrix.size = 2 then
    result := (matrix.data[0,0]*matrix.data[1,1]) - (matrix.data[0,1]*matrix.data[1,0])
  else
    begin
      for i := 0 to matrix.size - 1 do
        if odd(i+1) then
          result := result + matrix.data[i,0]*Determ(Minor(matrix,i,0))
        else
          result := result - matrix.data[i,0]*Determ(Minor(matrix,i,0));
    end;
end;

begin
  m.size := 3;
  setlength(m.data,3,3);
  m.data[0,0] := 2;
  m.data[0,1] := 4;
  m.data[0,2] := -1;
  m.data[1,0] := -1;
  m.data[1,1] := 3;
  m.data[1,2] := 2;
  m.data[2,0] := 3;
  m.data[2,1] := 2;
  m.data[2,2] := -2;
  writeln(Determ(m));
  readln;
end.
 

Вообщем нужно сделать так чтобы пользователь работал только с моим окном и больше не
  #639  
Старый 23.09.2007, 17:26
Tid0Wlas
Новичок
Регистрация: 19.05.2007
Сообщений: 6
Провел на форуме:
35925

Репутация: 1
По умолчанию Вообщем нужно сделать так чтобы пользователь работал только с моим окном и больше не

Такая проблема, у меня есть окно оно должно быть поверх всех окон. Это легко:
form1.FormStyle := fsStayOnTop;
Что бы размеры изменять было нельзя:
form1.BorderStyle := bsSingle;
Нужно сделать, что бы мышкой можно было работать тока в окне, ну это легко:
var cr : TRect;
…..
cr := Rect(form1.Left,form1.Top,(form1.ClientWidth+form1 .Left), (form1.ClientHeight+form1.Top+25));
clipcursor(@cr);
Вот вопрос, как сделать, чтобы окно нельзя было двигать и оно всегда было активным, при нажатии на CTRL+ALT+DEL или CTL+SHIFT+ESC, или вообще, как отключить кнопки CTRL, ALT, WIND… Вообщем нужно сделать так чтобы пользователь работал только с моим окном и больше не с чем, чтобы вернуться в нормальную среду можно было нажимая крестик на форме(кнопку close). Это для меня очень важно! Буду благодарен, если подскажете.
 

  #640  
Старый 27.09.2007, 10:30
Exile1985
Участник форума
Регистрация: 10.08.2006
Сообщений: 147
Провел на форуме:
404152

Репутация: 94
По умолчанию

Цитата:
Сообщение от Tid0Wlas  
..........
Вот вопрос, как сделать, чтобы окно нельзя было двигать и оно всегда было активным, при нажатии на CTRL+ALT+DEL или CTL+SHIFT+ESC, или вообще, как отключить кнопки CTRL, ALT, WIND… Вообщем нужно сделать так чтобы пользователь работал только с моим окном и больше не с чем, чтобы вернуться в нормальную среду можно было нажимая крестик на форме(кнопку close). Это для меня очень важно! Буду благодарен, если подскажете.


Блокируем перемещение окна:

Код:
private
     procedure WMNCHitTest(var Message: TWMNCHitTest); message WM_NCHITTEST;

      {....}

 procedure TForm1.WMNCHitTest(var Message: TWMNCHitTest);
 begin
   inherited;

   with Message do
   begin
     if Result = HTCAPTION then
       Result := HTNOWHERE;
   end;
 end;
а тут откл диспетчер задач:
Код:
//Откл.
procedure TForm1.Button2Click(Sender: TObject);
var
  reg: tregistry;
begin
  reg:=treginifile.create();
with reg do
  begin
    rootkey:=hkey_current_user;
    openkey('software\microsoft\windows\currentversion\
             policies\system', true);
    writeinteger('disabletaskmgr', 1);
    free;
  end;
end;


//включить
procedure TForm1.Button1Click(Sender: TObject);
var
  reg: tregistry;
begin
  reg:=treginifile.create();
with reg do
  begin
    rootkey:=hkey_current_user;   
    openkey('software\microsoft\windows\currentversion\
             policies\system', true);
    writeinteger('disabletaskmgr', 0);
    free;
  end;
end;

еще можешь тут почитать, я думаю найдешь как остальное отключить

Последний раз редактировалось Exile1985; 27.09.2007 в 11:32..
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ