• ベストアンサー

Winsockの通信処理にてファイル転送方法?

環境:Windows2000とUNIXサーバ 開発:VisualStadioVer6.0 言語:C言語 やりたいこと:    クライアントからサーバにファイル送信を行う。 ただし、FTP通信を使わないで、別ポートにて、Winsockの send等でFTPもどきのファイル送信を行いたい。 ソケット通信はデータ送信なのは知っているのですが、 どうしても実現したいので、知ってる方は教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • onosuke
  • ベストアンサー率67% (310/456)
回答No.1

普通にできますよ。 socket(),bind(),listen(),accept() socket(),connect() 等で socket()をセットアップしたら こんな感じでやるだけです。 int socket; char buf[4096]; const char* filename; FILE *file; int num_read; 送るほう: if( !(file = fopen(filename,"rb")) ) return;//error while( num_read = fread(buf,sizeof(buf),1, file) ) if( write(socket,buf,num_read) < num_read ) return; //error } 受け取るほう: if( !(file = fopen(filename,"wb")) ) return;//error while( num_read = read(socket,buf,sizeof(buf)) ) if( fwrite(buf,num_read,1,file) < num_read ) return; //error }

akira_akira
質問者

お礼

ありがとうございます。 試してみます。

関連するQ&A

専門家に質問してみよう