Pergunta

Estou tentando FTP alguns arquivos DMG da Apple, se o fizermos manualmente através do Safari ou, ou seja, acaba no destino muito bem e não corrompido. No entanto, se eu usar um cliente FTP Freeware que estávamos usando com grande sucesso para o ZIP e exe's ou se eu usar um script do PowerShell, terminei (adaptado da resposta de outro fluxo de Stackover), então perco cerca de 1/2 MB em Um arquivo de 10,5 MB e o DMG está corrompido. Alguém tem alguma coisa o que poderia estar dando errado? Coisas que eu poderia fazer para evitá -lo? Até agora, tudo o que tentei é fazer o DMG antes de enviar e isso não conseguiu nada. Novamente, qualquer coisa, menos um DMG, é transmitido muito bem.

Para sua informação, estou usando transferências de modo binário, então não é isso ... embora

Foi útil?

Solução 3

Só para todo mundo saber. Deve ter sido o cliente que eu estava usando tinha exatamente o mesmo problema do meu script PowerShell. Eu estava usando o StreamReader para obter os bytes para transferência e estava assumindo uma codificação que não estava correta. Mudei para um leitor de binário que não funciona, e agora funciona.

Outras dicas

Parece que seu cliente trata o arquivo DMG como arquivo de texto. Defina o modo de transferência binária no seu cliente FTP e ele o ftp como está.

Eu sempre pensei que o modo de transferência ASCII no FTP é simplesmente estúpido. Isso causa mais problemas do que vale a pena.

Tem certeza de que tudo, exceto um DMG, é transferido corretamente? Parece um problema com a codificação de transferência. O FTP suporta tipos de transferência binários e ASCII, principalmente devido à bagagem histórica. Na velhice, quando a largura de banda era mais assustadora, deixando de fora o alto (que as ASCII não usa) era um bom tempo. No entanto, se você tiver algum bytes com o conjunto de bits, o modo de transferência ASCII os perderá - portanto, o modo "binário", o que não trunca nada.

Normalmente, o comando para alternar os modos de transferência é "Bin" ou "ASCII".

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top