Erro de envio FTP

LAZARO

Member
Licensed User
Longtime User
Alguém sabe dizer porque não consigo enviar arquivo via FTP ?
Já fiz todos os testes: em outro sistema consigo enviar pois o arquivo existe, consigo fazer login, a pasta host existe. Só não consigo completar porque sempre retorna Sucess = False

Segue abaixo como está o código

FTP.UploadFile(File.DirInternal, "PEDIDO.TXT", True , "/PASTA")
Wait For FTP_UploadCompleted (ServerPath As String, Success As Boolean)
If Success Then
Msgbox("Pedido enviado com sucesso !!!","Enviado")
ProgressDialogHide
Else
Msgbox("Pedido não enviado","Erro")
ProgressDialogHide
End If
 

LAZARO

Member
Licensed User
Longtime User
Eu já pesquisei e testei todas as opções possíveis sugeridas mas sem sucesso.
O que está ocorrendo é que não consigo gravar no servidor e retorna a mensagem: 550 acess denied
Está claro que eu não tenho permissão para isso, mas ninguém consegue me dizer como faço pra ter permissão na internet.

upload_2019-5-6_14-13-19.png
 

Cableguy

Expert
Licensed User
Longtime User
O servidor FTP não precisa de um user e uma senha? Elas estão correctas? Utilizando um programa como o FileZilla consegues fazer upload?
 

LAZARO

Member
Licensed User
Longtime User
Sim. Eu tenho outro sistema para windows que está logando e salvando corretamente no servidor na pasta que eu desejo.
O nome de usuário e senha bem como o servidor de ftp estão corretos, eu utilizo o mesmo que funciona no windows.
Ja entrei em contato com o administrador do servidor e me respoderam que não existe nenhuma restrição.
Disseram ainda que a restrição está no meu dispositivo.
 

LAZARO

Member
Licensed User
Longtime User
B4X:
   'Sub Process_Globals -> Dim FTP As FTP

   Dim TextWriter1 As TextWriter
   TextWriter1.Initialize(File.OpenOutput(File.DirInternal , "FILE.TXT", False))
   Dim RXT01 As String
   RXT01=""
   TextWriter1.WriteLine(RXT01)
   TextWriter1.Close
   FTP.PassiveMode=True
   FTP.Initialize("FTP", "ftp.xxxxxx.com.br", 21 , "xxxxxx.com.br", "#######")
   Dim sf As Object = FTP.UploadFile(File.DirInternal, "FILE.TXT", False, "/")
   Wait For (sf) ftp_UploadCompleted (ServerPath As String, Success As Boolean)
   Log(LastException.Message)
 

Condata Informatica

Member
Licensed User
Porem, a opção acima de ajudou por um tempo até os vendedores não terem sinal de dados para transmissao, sendo assim
alguns dos pedidos não chegavão, optei por fazer o envio pra ftp com o PHP, e desde então está 100%
 

LAZARO

Member
Licensed User
Longtime User
Eu já tentei todas as opções sugeridas aqui no fórum e outros sites mas nenhuma ajudou.
Estou aguardando a redehost (servidor) migrar o meu plano para SSL e ver no que vai dar.
Eu tenho um sistema em vfp enviando perfeitamente.
 

LAZARO

Member
Licensed User
Longtime User
Pra quem interessar eu já resolvi este problema: Era apenas um simples ponto "." antes da barra da pasta "./pasta"
B4X:
FTP.UploadFile(File.DirInternal, "PEDIDO.TXT", True , "./PASTA")
 

krlos2004

Member
Licensed User
Longtime User
Por experiencia, não é uma boa pratica, vc enviar um arquivo chamado pedido.txt, pois voce não 100% de garantia que o arquivo chegou completo,
por ftp, eu particulamente, envio um arquivo e tento renomear, se concluir 100% e porque o arquivo esta intacto.
 
Top