[ 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. Freedom

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

    Joined:
    2 Jul 2007
    Messages:
    38
    Likes Received:
    92
    Reputations:
    8
    str:=Copy(str,20,Length(str)-20);

    и в str у тебя будет program.exe

    что то типо такого
     
    #3721 Freedom, 11 Jul 2009
    Last edited: 11 Jul 2009
  2. diznt

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

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    Чуть дополню вопрос для непонятливых

    Путь до программы может быть разным...
     
  3. transserg

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

    Joined:
    2 Jul 2008
    Messages:
    147
    Likes Received:
    25
    Reputations:
    2
    sr:=extractfilename(str);
    в sr твоё имя файла ток подключи модуль sysutils
     
  4. Nizhegorodets

    Nizhegorodets Member

    Joined:
    21 Mar 2009
    Messages:
    80
    Likes Received:
    66
    Reputations:
    9
    есть рега на сайте . хочу сделать для нее бота , который сам регистрируется.
    рега очень простая, несколько полей ввода типа: логин, пароль, секретный вопрос,ответ на него,майл + одна кнопка.

    Я делал так , заполнял поля и нажимал на кнопку. А возможно ли осуществить подобное отправкой одного пост запроса?

    перехватил отправку данных на их сервер (через Firefox Tamper Data)

    и вот что получилось...

     
  5. -[БуШ]-

    -[БуШ]- New Member

    Joined:
    11 Jul 2009
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    Вопрос по IdFTP
    Не отправляется файл на FTP сервер. скачивание в пассивном режиме проходит норм. закачка нет. нет не ошибки, нихрена
    IdFTP->Put("localfile.txt","inetfile.txt",false);
    В чём трабл - понять не могу=((
     
  6. Freedom

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

    Joined:
    2 Jul 2007
    Messages:
    38
    Likes Received:
    92
    Reputations:
    8
    так этот разный путь забей в переменную допустим path и склеивай путь и имя файла

    str:=path+str

    и всё
     
  7. [n]-c0der

    [n]-c0der Member

    Joined:
    3 Feb 2009
    Messages:
    83
    Likes Received:
    24
    Reputations:
    -1
    бля... ты че вопрос нормально прочитать не можешь?
    Два раза он его написал, или понимаешь туго?
    Есть строка, содержащая путь к проге, надо вырезать название проги...
    ответ уже дали, но способ не один...
     
    1 person likes this.
  8. yfet

    yfet Banned

    Joined:
    11 Jul 2009
    Messages:
    48
    Likes Received:
    19
    Reputations:
    5
    POST-запрос

    Добролго времени суток, уважаемые форумчане.
    У меня проблема с POST-запросом. Страница с которой работаю - http://wen.ru/gb/?uid=1&form=1

    Пишу такой код
    Получаю капчу
    Code:
    procedure TForm1.Button2Click(Sender: TObject);  var  Captcha:TMemoryStream;  s,CapchaID, sec_cap:string;  gif : TGifImage;  begin  gif := TGIFImage.Create;  s:=idHTTP1.Get('http://wen.ru/gb/?uid='+Edit1.Text+'&form=1');  CapchaID:=Copy(s,pos('<img src="/secure/gif.php?',s)+length('<img src="/secure/gif.php?'),pos('"',Copy(s,pos('<img src="/secure/gif.php?',s)+length('<img src="/secure/gif.php?'),15))-1);  sec_cap:=(Copy(CapchaID,pos(',',CapchaID)+1,length(CapchaID)-pos(',',CapchaID)+1));  captcha:=TMemoryStream.Create;  idHTTP1.Get('http://wen.ru/secure/gif.php?'+CapchaID, captcha);  captcha.SaveToFile('captcha.gif');  Image1.Picture.LoadFromFile('captcha.gif');  Captcha.Free;  gif.Free;  end;
    жму на кнопку добавить
    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
    captcha, name, s, CapchaID, sec_cap : string;
    params:tstringlist;
    begin
    s:=idHTTP1.Get('http://wen.ru/gb/?uid='+Edit1.Text+'&form=1');
    CapchaID:=Copy(s,pos('<img src="/secure/gif.php?',s)+length('<img src="/secure/gif.php?'),pos('"',Copy(s,pos('<img src="/secure/gif.php?',s)+length('<img src="/secure/gif.php?'),15))-1);
    sec_cap:=Copy(CapchaID,1, pos(',',CapchaID)-1);
    captcha:=Edit2.Text;
    name:=edit3.Text;
    params:=TStringList.Create;
    try
    params.Add('author='+name);
    params.Add('message='+Memo1.Lines.Text);
    params.Add('tr=n');
    params.Add('uid='+Edit1.Text);
    params.Add('add=1');
    params.Add('code='+captcha);
    params.Add('cid='+sec_cap);
    params.Add('lng=ru');
    idhttp1.Post('http://wen.ru/gb/',params);
    finally
    params.free;
    end;
    end;
    
    Но пост запрос почему не работает, хотя все параметры указаны верно(((( Помогите исправить пожалуйста
     
  9. fastiktut

    fastiktut New Member

    Joined:
    28 Jan 2009
    Messages:
    9
    Likes Received:
    1
    Reputations:
    0
    Есть свой браузер TWebBrowser нужно выловить что было введено во флэш форме, которая загружена в этот браузер, можно ли это сделать? Или другой вариант это подгружать такую же флэшку и при нажатии на нее эмитировать нажатие клавиш на клавиатуре.
     
  10. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Регулярки + инди + один из сервисов измерения.
     
  11. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Посмотри внимательно на название темы - [Delphi]/[Pascal] Задай вопрос, получи ответ/B], это не Задай вопрос - получи готовую прогу. Пойми, за тебя никто ничего делать не будет.
     
  12. -[БуШ]-

    -[БуШ]- New Member

    Joined:
    11 Jul 2009
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    $Atlet$, компонент IdHTTP. зайди через него на 2ip.ru и выкачай оттуда всё что нужно
     
  13. -[БуШ]-

    -[БуШ]- New Member

    Joined:
    11 Jul 2009
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    fastiktut, для работы с flash используется библиотека shockwave
     
  14. [K4t]

    [K4t] New Member

    Joined:
    15 Feb 2009
    Messages:
    53
    Likes Received:
    4
    Reputations:
    1
    Здравствуйте, у меня вопрос про компонент timage.
    Суть проблемы: В программе, в роли кнопоки выступает timage.
    При событии MouseDown нужно, чтобы картинка менялась на, ну например другую, но уже нарисованую как нажатая, а при MouseUp всё восстанавливалось.
    Это я сделал двумя способами.
    1)Самым тупым
    2)Лучше, но всё равно через ж...
    1: Просто
    Code:
    image1.picture.loadfromfile('pr_button.bmp');
    2:
    Code:
    var picture:tbitmap;
         begin
         picture:=tbitmap.create('pr_button.bmp');
         image1.picture.assign(picture);end;
    Это я так пытался оптимизировать работу... во многих прогах бывают такие длинные картинки, на которых собраны все рисунки. Например на тех же image кнопках.
    Вот как можно сделать так-же? Я так понимаю, что они при каккомнить событии двигают этот bitmap на определённый x,y. Но как это можно сделать? Посоетуйте уже чонить...
     
  15. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Это выглядит примерно так:
    Code:
    var
     img:tbitmap;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
     img := tbitmap.Create;
     img.LoadFromFile('c:\1.bmp');
     image1.Canvas.CopyRect(rect(1,1,80,80), img.Canvas, rect(1,1,80,80));
    // 1 , 1, 80, 80 - left, top, right, bottom
    // первый параметр - регион куда вставлять будем
    // второй - канвас откуда будем брать данные
    // третий - регион откуда будут браться данные
    // изменяя третий параметр как раз и можно
    // брать разне области из картинки
    end;
    
    procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
    // сдвигаем left и right на 80 пикселей
     image1.Canvas.CopyRect(rect(1,1,80,80), img.Canvas, rect(80,1,160,80));
    end;
    
    procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      image1.Canvas.CopyRect(rect(1,1,80,80), img.Canvas, rect(1,1,80,80));
    end;
    
     
    #3735 slesh, 13 Jul 2009
    Last edited: 13 Jul 2009
    1 person likes this.
  16. velikijmerlin

    velikijmerlin New Member

    Joined:
    27 Feb 2009
    Messages:
    29
    Likes Received:
    2
    Reputations:
    -2
    доброго времени суток..))
    вот решил сделать маленькую програмку..
    и столкнулся с непонятками...
    в общем, не могу понять почему программа странно себя ведёт с этим делом...

    Code:
    procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    begin
      if Socket.ReceiveText ='Restart' then begin // åñëè ïîëó÷åíûé òåêñò = áóêâå R òî ïåðåçàãðóýàåì êîìï
      //   winexec(pchar('shutdown -r -f -t 02'), sw_hide);
         ShowMessage('1');
         serversocket1.Socket.Connections[0].SendText('Computer restarts at 2 seconds');
      end;
      if socket.ReceiveText = 'Shutdown' then begin    // âûêëþ÷åíèå êîìïà
            serversocket1.Socket.Connections[0].SendText('Computer will be shutdown at 2 seconds');
          //  winexec(pchar('shutdown -s -f -t 02), sw_hide);
            showmessage('2');
      end;
    
    не могли подсказать в чём причина? потому что прога просто после выполнения первого условия сразу летит в конец проги и всё... ничего не происходит, а надо чтобы после первого условия(рестарта) произошло выполнение второго условия(выключение...)

    помогите нубу)))

    заранее спасибо...
     
  17. -[БуШ]-

    -[БуШ]- New Member

    Joined:
    11 Jul 2009
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    бональная проблема со StringGrid. задача: разукрасить определённую ячейку и написать в ней текст. проблема: ячейка успешно разукрашивается, но текст в ней писаться отказывается
    обработчик Drawcell

    if(ACol == 4 && ARow == 3)
    {
    StringGrid1->Canvas->Brush->Color = clLime;
    StringGrid1->Canvas->FillRect(Rect);
    }
     
  18. [K4t]

    [K4t] New Member

    Joined:
    15 Feb 2009
    Messages:
    53
    Likes Received:
    4
    Reputations:
    1
    Вы хотите, чтобы шла перезагрузка и отдавалась команда на выключение одновременно? 8|
     
  19. Nullsleep

    Nullsleep Member

    Joined:
    2 Jun 2009
    Messages:
    67
    Likes Received:
    26
    Reputations:
    0
    Нужно вручную прорисовывать текст с помощью TextOut на канве StringGrid'а.
    Code:
    if (ACol == 4 && ARow == 3)
    {
      StringGrid1->Canvas->Brush->Color = clLime;
      StringGrid1->Canvas->FillRect(Rect);
      StringGrid1->Canvas->Font->Color = clBlack;
      StringGrid1->Canvas->TextOut(Rect.Left, Rect.Top,
        StringGrid1->Cells[ACol][ARow]);
    }
    
     
    #3739 Nullsleep, 14 Jul 2009
    Last edited: 14 Jul 2009
  20. velikijmerlin

    velikijmerlin New Member

    Joined:
    27 Feb 2009
    Messages:
    29
    Likes Received:
    2
    Reputations:
    -2
    нет чтобы не одновременно а чтобы по нажатию кнопок...
    а как тогда сделать чтобы команды шли не по очереди? :confused:
     
Thread Status:
Not open for further replies.