version 6.5
FTP_MacBinary (ftp_ID; macBinaryMode) --> 整数
引数 | Type | 説明 | |
ftp_ID | 倍長整数 | --> | FTPログイン参照 |
macBinaryMode | 整数 | --> | -1 = 現在の設定を取得, 1 = 有効, 0 = 無効 |
現在の設定 (-1 を渡した場合) | |||
戻り値 | 整数 | エラーコード |
説明
FTP_MacBinary コマンドは、FTP_Send や FTP_Receive使用時のMacBinaryモードを有効/無効にします。ftp_IDでカレントのFTPセッションを特定すると、このコマンドはmacBinaryMode 引数に渡した値に基づき、MacBinary転送をオンまたはオフにします。
MacBinaryプロトコルはしばしば、データフォークとリソースフォークを持つバイナリデータやファイルの転送をおこなうために、Macintosh FTPクライアントとサーバにより使用されます。
Windowsユーザのためのメモ: FTP転送時にWindows上でMacBinaryプロトコルを使用できますが、PCコンピュータ上でMacBinaryファイルをデコードすることには意味がありません。Intelベースのマシンはデータフォークとリソースフォークを持つデータを格納できません。PCプラットフォームでは、このようなファイルを正しく認識できないため、リソースフォークを持つMacintoshファイルはエンコードされていないフォーマットで保存する際壊れてしまうでしょう。
ftp_ID は、FTP_Loginにより確立されたFTPセッション参照です。
macBinaryMode はMacBinary転送をオンにするかオフにしるか指定するための整数値です。コマンドから変更後のMacBinary転送モードが返されるため、この引数は変数であるべきです。1を渡すとMacBinaryが有効になり、0を渡すと無効になります。-1を渡すと、コマンドはmacBinaryMode 引数に現在のMacBinary転送モードを返します (1 または 0)。
警告: すべてのFTPサーバがMacBinaryプロトコルをサポートするわけではありません。このような場合、macBinaryMode 引数の値にかかわらず、FTP_MacBinaryコマンドをコールするとエラー10053が返されます。
例題
この例題では、FTPファイルを受信する前に、MacBinaryプロトコルを有効にします。MacBinaryが有効な状態でファイルの受信に成功すると、オリジナルのフォーマットにデコードされ、MacBinaryドキュメントは削除されます。
vUseMacBin:=-1 $error:=FTP_MacBinary (vFTP_ID;vUseMacBin) If($error=10053) MacBinaryIsSupported:=False `FtpサーバはMacBinaryプロトコルをサポートしない Else MacBinaryIsSupported:=True End if vLocalFile:="" If(MacBinaryIsSupported) vUseMacBin:=1 $error:=FTP_MacBinary (vFTP_ID;vUseMacBin) `MacBinaryを有効にする End if $error:=FTP_Receive (vFTP_ID;"MyApplication";vLocalFile;cbShowTherm) If ($error=0) & (vUseMacBin=1) `MacBinaryの受信に成功した vDecodePath:="" If (IT_Decode (vLocalFile;vDecodePath;8)=0) `MacBinaryデコード DELETE DOCUMENT(vLocalFile) `デコードに成功したら削除する End if End if
参照