不要用那个东西~
那个东西我也不太了解
但有个方法我想会~
就是用sock
或者inet都可以很容易做到的
msdn里面可以有这些东西

解决方案 »

  1.   

    NMHTTP1->TimeOut = 5000;
      NMHTTP1->InputFileMode = false;
      NMHTTP1->OutputFileMode = false;
      NMHTTP1->ReportLevel = Status_Basic;
      if (CheckBox1->Checked)
      {
        NMHTTP1->Proxy = Edit11->Text;
        NMHTTP1->ProxyPort = StrToInt(Edit12->Text);
      }
      NMHTTP1->HeaderInfo->Cookie = Edit5->Text;
      NMHTTP1->HeaderInfo->LocalMailAddress = Edit6->Text;
      NMHTTP1->HeaderInfo->LocalProgram = Edit7->Text;
      NMHTTP1->HeaderInfo->Referer = Edit8->Text;
      NMHTTP1->HeaderInfo->UserId = Edit9->Text;
      NMHTTP1->HeaderInfo->Password = Edit10->Text;
      NMHTTP1->Get(Edit1->Text);
      Memo1->Text = NMHTTP1->Body;
      Memo2->Text = NMHTTP1->Header;
      if (NMHTTP1->CookieIn != "")
        ShowMessage("Cookie:\n"+NMHTTP1->CookieIn);
      

  2.   

    你应该放在delphi里或者bcb里的
      

  3.   

    因为该构件是异步的,循环会GET出错,你应在OnSuccess执行累计,大致如下:
    Var count : Integer = 0;Procedure Form1.Button1Click(...)
    Begin
      nmhttp1.Get(...)
    End;Procedure Form1.Nmhttp1Success(...)
    Begin
      Inc(Count);
      If Count < 10 Then nmhttp1.Get(...)
      Else Count :=  0;
    End;
      

  4.   

    那么,如此一定行:
    const wm_fireaction = wm_user+$1234;
    Type Form1=Class(...)
           ...
          private
           procedure WMFireAction( Var msg : TMsg ); message wm_fireaction;
    Var count : Integer = 0;procedure Form1.WMFireAction( Var msg: TMsg );
    Begin
      nmhttp1.Get(...)
    End;
    Procedure Form1.Button1Click(...)
    Begin
      PostMessage( handle, wm_fireaction, 0, 0 );
    End;Procedure Form1.Nmhttp1Success(...)
    Begin
      Inc(Count);
      If Count < 10 Then   PostMessage( handle, wm_fireaction, 0, 0 )
      Else Count :=  0;
    End;