0

Apple DMG ファイルを FTP で送信しようとしていますが、Safari や IE を使用して手作業で行うと、目的地で問題なく破損することはありません。ただし、zip と exe で大成功を収めて使用していたフリーウェアの FTP クライアントを使用する場合、または完成した Powershell スクリプトを使用する場合 (別のスタックオーバー フローの質問の回答から適応)、約 1/2 Mb を失います。 10.5 Mb のファイルで、dmg が破損しています。何がうまくいかないのか、誰にも手がかりがありますか? それを防ぐために私ができることは何ですか?これまでのところ、送信する前に dmg を gzip してみましたが、何も達成されませんでした。繰り返しますが、dmg 以外は問題なく送信されます。

参考までに、バイナリモード転送を使用しているので、そうではありません..thx

4

3 に答える 3

1

クライアントが dmg ファイルをテキスト ファイルとして扱っているようです。ftp クライアントでバイナリ転送モードを設定すると、そのまま ftp されます。

私はいつも、ftp の ascii 転送モードは単純にばかげていると思っていました。それは価値があるよりも多くの問題を引き起こします。

于 2008-11-14T12:42:52.483 に答える
1

DMG 以外はすべて正しく転送されますか? 転送エンコーディングに問題があるようです。FTP はバイナリと ASCII の両方の転送タイプをサポートしますが、これは主に過去の荷物によるものです。昔は、帯域幅がもっと怖かったので、上位ビット (ASCII では使用されません) を省略すると、時間の節約になりました。ただし、ビットが設定されたバイトがある場合、ASCII 転送モードはそれらを失います。したがって、何も切り捨てない「バイナリ」モードになります。

通常、転送モードを切り替えるコマンドは「bin」または「ascii」です。

于 2008-11-14T12:43:41.810 に答える
0

誰もが知っているように。私が使用していたクライアントは、私の PowerShell スクリプトとまったく同じ問題を抱えていたに違いありません。StreamReader を使用して転送用のバイトを取得していましたが、エンコーディングが正しくないと想定していました。そうでない BinaryReader に切り替えたところ、動作するようになりました。

于 2008-12-01T16:12:41.713 に答える