Ir para conteúdo
  • Cadastre-se

Pesquisar na Comunidade

Showing results for tags 'acbr; acbrftpdownload;'.

  • Search By Tags

    Digite tags separadas por vírgulas
  • Search By Author

Tipo de Conteúdo


Fóruns

  • Fórum Aberto - ACBr
    • Notícias do ACBr
    • Equipamentos testados
    • Base de Conhecimento
    • Dúvidas Gerais sobre o ACBr
    • ACBrSerial
    • ACBrSAT
    • ACBrNFe
    • ACBrDFe
    • Dúvidas sobre TEF
    • Dúvidas sobre PIX
    • ACBrMonitor PLUS
    • ACBrTXT
    • ACBrBoleto
    • ACBrDiversos
    • ACBrTCP
    • ACBrFramework
    • ACBrLIB
  • ACBr Pro
    • Dúvidas gerais
    • Duvidas Privadas
    • ACBrMonitorPLUS
    • NFe/NFCe - Nota Fiscal Eletrônica
    • DFe - Documentos Fiscais Eletrônicos
    • SAT / MFE
    • TEF
    • Boleto
    • ACBrSPED
    • ACBrTXT
    • Paf-ECF
    • Requisitos Fiscais por UF
    • ACBrLIB
  • Outros Assuntos
    • Boteco do ACBr
    • Legislação Fiscal e Tributária
    • Object Pascal - Delphi & Lazarus
    • Banco de Dados
    • Classificados
    • Dúvidas não relacionadas ao ACBr

Categorias

  • ACBr Pro
    • ACBrLib - PRO
    • ACBrMonitorPLUS - PRO
    • Utilitários - PRO
    • Dia do ACBr 1a edição
    • Dia do ACBr 2a edição
    • ACBrLib Android - Pro
  • Download Livre
    • ACBrLib - DEMO
    • ACBrMonitorPLUS - DEMO
    • Demos / Testes / Utilitários
    • Apresentações - Palestras
    • ACBrLib Android - Demo

Calendários

  • Eventos - Palestras - Webinars
  • Prazos SEFAZ
  • Calendário da Comunidade
  • ACBr Papo Pro
  • Feriados Nacionais

Find results in...

Find results that contain...


Data de Criação

  • Início

    End


Data de Atualização

  • Início

    End


Filter by number of...

Data de Registro

  • Início

    End


Grupo


Website URL

Encontrado 1 registro

  1. Boa Tarde! Me deparei com a seguinte situação, preciso baixar alguns arquivos de um host FTP, porém quando a primeira opção estiver offline gostaria que ele tentasse baixar do segundo host, então escrevi a seguinte função. function RecebeArquivoFTP(const aArquivoFTP, aArquivoLocal: String; aHookMonitor: TAcbrDownloadHookMonitor = nil): Boolean; var ArquivoLocal: String; CaminhoDestino: String; ArquivoDestino: String; FACBrDownload: TACBrDownload; i: Integer; begin Result := False; FACBrDownload := TACBrDownload.Create(nil); try for i := 0 to Length(FTP_HOST) do begin try FACBrDownload.Protocolo := protFTP; FACBrDownload.FTP.FtpHost := FTP_HOST[i]; //constante, array de strings com as informações do hosts. FACBrDownload.FTP.FtpPort := FTP_PORT[i]; FACBrDownload.FTP.FtpUser := FTP_USER[i]; FACBrDownload.FTP.FtpPass := FTP_PASSWORD[i]; FACBrDownload.OnHookMonitor := aHookMonitor; ArquivoLocal := PadraoBarrasWindows(aArquivoLocal); //função para adequar o padrao das barras. CaminhoDestino := TPath.GetDirectoryName(ArquivoLocal); ArquivoDestino := TPath.GetFileName(ArquivoLocal); if not(DirectoryExists(ExtractFilePath(ArquivoLocal))) then ForceDirectories(ExtractFilePath(ArquivoLocal)); if (FileExists(ArquivoLocal +'.part')) then DeleteFile(ArquivoLocal +'.part'); if (FileExists(ArquivoLocal)) then DeleteFile(ArquivoLocal); FACBrDownload.DownloadDest := CaminhoDestino; FACBrDownload.DownloadNomeArq := aArquivoFTP; FACBrDownload.DownloadUrl := IncluirSeparadorDiretorio(FACBrDownload.FTP.FtpHost, '/') + aArquivoFTP; FACBrDownload.StartDownload; Result := (FACBrDownload.DownloadStatus = stDownload); if (Result) then Break; except // Não levanta a exceção, apenas tenta na próxima iteração end; end; finally FACBrDownload.Free; end; end; Porém, se por algum motivo ocorre alguma exceção na tentativa de login dentro do ACBr ele simplesmente da um exit como mostra o código abaixo. // FTP Login if not fFTPSend.Login then Exit; Minha sugestão seria ele criar uma exceção caso ocorresse algum problema no login: // FTP Login if not fFTPSend.Login then raise Exception.Create('Não foi possível efetuar o login!'); Peço desculpas por qualquer inconveniente ou confusão no código pois estou iniciando na programação... Segue em anexo o arquivo com a alteração. ACBrFTPDownload.pas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...