помогите пожалуйста с Post

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Student :), 23 Mar 2008.

  1. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    привожу код
    httpcli1 это с компонентов ICS

    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
    sData : string;
    Datax : TStringStream;
    begin
    Datax := TStringStream.Create('');
    sData :='a=55';
    httpcli1.Proxy:='127.0.0.1' ;
    httpcli1.ProxyPort:='81';
    HttpCli1.SendStream := TMemoryStream.Create;
    HttpCli1.SendStream.Write(sData[1], Length(sData));
    HttpCli1.SendStream.Seek(0, 0);
    httpcli1.RcvdStream := Datax;
    HttpCli1.URL :='http://ima.com/index.php';
    HttpCli1.Post;
    dounl:=Datax.DataString;
    HttpCli1.RcvdStream.Free;
    HttpCli1.RcvdStream := nil;
    HttpCli1.Free;
    ShowMessage(dounl);
    end;
    
    Процедура выполняеться один раз , когда повторно нажимаю на кнопку программа пишет об ошибке и вылетает :(
     
  2. Garfi

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

    Joined:
    1 Feb 2008
    Messages:
    85
    Likes Received:
    23
    Reputations:
    0
    Сделай цикл ;)
     
  3. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    а смысл
     
  4. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    О какой ошибке пишет?
    еще залей этот компонент, там посмотрим а то такого у меня нет!:)
     
    #4 De-visible, 23 Mar 2008
    Last edited: 23 Mar 2008
  5. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    вот сайт где он лежит
    http://www.overbyte.be/frame_index.html?redirTo=/products/ics.html
     
  6. Hellsp@wn

    Hellsp@wn Elder - Старейшина

    Joined:
    29 Apr 2007
    Messages:
    400
    Likes Received:
    153
    Reputations:
    48
    ты компонент разрушаешь: HttpCli1.Free;
    а заново создаешь потом?
     
  7. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    а что тогда это делает ?
    httpcli1.Destroy
     
  8. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    Ты ошибку написать можешь???
     
  9. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Если на форме присутствует компонент HttpCli1, то нафига его уничтожать с помощью Free? При первом проходе все будет ОК, однако в конце происходит освобождение памяти из-под него. Поэтому при втором нажатии бАттона HttpCli1 будет уже отсутствовать. Естественно, выдаст ошибку
     
  10. dos999

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

    Joined:
    15 Feb 2008
    Messages:
    137
    Likes Received:
    24
    Reputations:
    0
    Вощем студент :) убирай эту строчку
    HttpCli1.Free;

    и всё будет оФФигенно =)
    ИМХО объекты которые у тебя на форме уничтожать ненадо
     
  11. Pir4tt

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

    Joined:
    3 Jan 2008
    Messages:
    73
    Likes Received:
    36
    Reputations:
    5
    лучше, наоборот снеси с формы и сначала создавай серез HttpCli1:=THttpCli1.Create(self), а потом как отработает разрушай через HttpCli1.Free
    Зочем так?
    А зотем, что что это за компонент я хз, но например в индейцах есть проблема при повторном коннекте с одного и того же компонента))
     
  12. dos999

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

    Joined:
    15 Feb 2008
    Messages:
    137
    Likes Received:
    24
    Reputations:
    0
    индейцы вообще с проксёй не всегда хорошо работают