質問

I am using this code because I have to upload a file on a server:

procedure TForm1.Button6Click(Sender: TObject);
var
 IdFTP1:TIdFTP;
begin           
   IdFTP1.Create;
   IdFTP1.Host:=host;
   IdFTP1.Username:=user;
   IdFTP1.Password:=pass;
   IdFTP1.Passive:=True;

   try
    IdFTP1.Connect;
    IdFTP1.Put('C:\folderden\hash_rekt.bmp');
   finally
    IdFTP1.Disconnect;
   end;

  end;

I am using Lazarus 1.0.14 and this code has no errors. By the way, when I click the button for upload that picture, I have the SIGSEGV error.

Do you have any suggestion?

役に立ちましたか?

解決

You are not creating IdFTP1 object properly. Try something like this:

procedure TForm1.Button6Click(Sender: TObject);
var
  IdFTP1: TIdFTP;
begin
  IdFTP1 := TIdFTP.Create;
  try
    IdFTP1.Host := host;
    IdFTP1.Username := user;
    IdFTP1.Password := pass;
    IdFTP1.Passive := TRUE;

    IdFTP1.Connect;
    try
      IdFTP1.Put('C:\folderden\hash_rekt.bmp');
    finally
      IdFTP1.Disconnect;
    end;
  finally
    IdFTP1.Free;
  end;
end;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top