[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    Resourse Hacker
    ResExplorer
    Resourse Tuner
    Restorator
     
  2. GlOFF

    GlOFF Elder - Старейшина

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    W!z@rD Это НЕ программно! Это руками на руками большее похоже. Хотя можно с собой тоскать эту тулзину и через командную строку править ресурсы!
    A2GIL Я как понел иконку нужно для ДЖОЙНЕРА ;)

    http://slil.ru/24868464 - Модуль на Delphi для работы с ресурсами.
     
    1 person likes this.
  3. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    Иконку файлу изменяют в реестре... А программе - мутят с его ресурсами
     
  4. GlOFF

    GlOFF Elder - Старейшина

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    Для джойнера только в ресурсы исполняемого файла добавлять иконки, чтобы при просмотре в проводнике или аналогичном файловом менеджере, иконка файла выглядела как нам нужно!
     
    1 person likes this.
  5. A2GIL

    A2GIL Elder - Старейшина

    Joined:
    31 Aug 2007
    Messages:
    84
    Likes Received:
    59
    Reputations:
    -3
    Да, Gloff это для джойнера! Уже модернизировал, но вот с иконкой никак не получается! Я уже наверное до ручки дошел, что в голове никак не укладывается как это сделать! Получется нужно править ресурсы стаба? Тогда каким образом это отразится на проводнике, ведь файл то нужно предварительно запустить?!
     
  6. GlOFF

    GlOFF Elder - Старейшина

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    A2GIL http://slil.ru/24868464 - Модуль на Delphi для работы с ресурсами.

    Нужно в ресурсы стаба добавить ресурс иконки и все! :)
     
  7. Killerkod

    Killerkod Elder - Старейшина

    Joined:
    1 Aug 2007
    Messages:
    178
    Likes Received:
    113
    Reputations:
    0
    А почему через ресторатор нельзя? Ведь через него для созданного файла легче всего сменить иконку...
     
  8. Mkey

    Mkey New Member

    Joined:
    17 May 2007
    Messages:
    11
    Likes Received:
    3
    Reputations:
    0
    как получить список дочерних процессов чужого приложения?
    для win2000-XP
    желательно с примером кода....
     
  9. byblik

    byblik Elder - Старейшина

    Joined:
    1 Oct 2006
    Messages:
    108
    Likes Received:
    48
    Reputations:
    -5
    Нужен исходник желательно паскаль(консоль делфи) Ищет определитель матрицы, любого порядка, рекурсия. Сам плохо знаю программирование, учусь тока, написал до 4 порядка, без рекурсии. Никак немогу придумать, как же всетаки с рекурсией написать да и чтоб любого порядка можно было посчитать. Буду благадарен если кто даст исходник, если можно в ПМ.
     
  10. Xserg

    Xserg Elder - Старейшина

    Joined:
    9 Dec 2006
    Messages:
    135
    Likes Received:
    127
    Reputations:
    53
    Code:
    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.
     
  11. Mkey

    Mkey New Member

    Joined:
    17 May 2007
    Messages:
    11
    Likes Received:
    3
    Reputations:
    0
    ща попробую...
     
  12. Mkey

    Mkey New Member

    Joined:
    17 May 2007
    Messages:
    11
    Likes Received:
    3
    Reputations:
    0
    Xserg - спасибище!!!... 2й раз выручаешь.... + поставить не дают... готов отблагодарить материально 50рЭ на твою мобилу положу с удовольствием....
    в PM номер скинь....
     
    #632 Mkey, 23 Sep 2007
    Last edited: 23 Sep 2007
    2 people like this.
  13. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    byblik, смотри, набросал что-то. Вроде считает, оптимизируй только
    Code:
    {$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.
     
    1 person likes this.
  14. Tid0Wlas

    Tid0Wlas New Member

    Joined:
    19 May 2007
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Вообщем нужно сделать так чтобы пользователь работал только с моим окном и больше не

    Такая проблема, у меня есть окно оно должно быть поверх всех окон. Это легко:
    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). Это для меня очень важно! Буду благодарен, если подскажете.
     
  15. Exile1985

    Exile1985 Elder - Старейшина

    Joined:
    10 Aug 2006
    Messages:
    124
    Likes Received:
    35
    Reputations:
    1


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

    Code:
    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;
    
    
    а тут откл диспетчер задач:
    Code:
    //Откл.
    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;

    еще можешь тут почитать, я думаю найдешь как остальное отключить :)
     
    #635 Exile1985, 27 Sep 2007
    Last edited: 27 Sep 2007
  16. zer0c0o1

    zer0c0o1 New Member

    Joined:
    5 Oct 2007
    Messages:
    12
    Likes Received:
    2
    Reputations:
    0
    Как выполнить авторизацию не меняя руками постоянно куки? вот с таким хедером:

    =========================================================
    GET /client/images/1.gif HTTP/1.0
    Accept: */*
    Referer: http://192.168.0.1/client/client.php
    Accept-Language: ru
    Cookie: какие-то куки
    If-Modified-Since: Sat, 22 Nov 2006 19:18:01 GMT; length=43
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)
    Host: 192.168.0.1
    Authorization: Basic dXBzdHB1czo0OTQyMzE=
    Connection: Keep-Alive
    =========================================================


    Пробую вот так но приходиться менять куки

    Код:
    =========================================================
    idhttp1.Request.BasicAuthentication:=true;
    idhttp1.Request.Username:='name';
    idhttp1.Request.Password:='pass';
    str:=de.Get('http://192.168.0.1/client/client.php');
    В свойствах Request в CustomHead указываю куки
    =========================================================
     
  17. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    А что там в куках постоянно меняется?
     
  18. zer0c0o1

    zer0c0o1 New Member

    Joined:
    5 Oct 2007
    Messages:
    12
    Likes Received:
    2
    Reputations:
    0
    зчначения login_attempts= и PHPSESSID=
     
  19. ZirroCool

    ZirroCool Elder - Старейшина

    Joined:
    16 Sep 2006
    Messages:
    128
    Likes Received:
    55
    Reputations:
    20
    Вопрос такой!
    Как сделать билдер?
    Где об этом можно почитать и есть ли подробные мануалы?
    Спасибо!
     
  20. Krey

    Krey Member

    Joined:
    8 Sep 2007
    Messages:
    0
    Likes Received:
    16
    Reputations:
    -20
    Компилиш ехе в дельфи той проги которую хочеш чтобы билдер потом делал, создаеш билдер (вернее конфигуратор) засовываеш тот самый файлик к нему в ресурсы, конфигуратор при запуске выбрасывает ехе а что делать дальше написано в замечательной статье которая лежит на этом форуме, забей в поиск "Конфигуратор" и найдеш в статьях интересующий тебя материал.
     
Thread Status:
Not open for further replies.