Delphi 使用Indy FTP的SIGSEGV无法上载文件

Delphi 使用Indy FTP的SIGSEGV无法上载文件,delphi,ftp,lazarus,Delphi,Ftp,Lazarus,我使用此代码是因为我必须在服务器上上载文件: 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.Connec

我使用此代码是因为我必须在服务器上上载文件:

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;
我使用的是Lazarus 1.0.14,这段代码没有错误。顺便说一下,当我点击上传图片的按钮时,我出现了SIGSEGV错误

您有什么建议吗?

您没有正确创建IdFTP1对象。试着这样做:

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;