Inetを使って指定URLからアスキー文字を読み込むことができます。
その逆で、指定URLに書き込むというかアップロードはできるのでしょうか。
セキュリティ問題などで制限されてしまうのでしょうか。
相手側にFTPサーバが立っていれば可能です。
データの送受信をしたいのなら、WinSockで
UDP使ったほうがいいかもしれません。
http://www.mitene.or.jp/~sugisita/family/papa/vb/index.html
この"みーくんパパの仕事部屋"で、FTPクラスが公開されています。
パーミッションの変更などはできませんけど、
これをつかえばファイルアップロードくらいなら簡単にできます。
パーミッションも変えたい場合は、
このクラスの中身を解析して、うまくやるしかないですね^^;
サーバーがHTTP/1.1のPUTメソッドをサポートしていればHTTPで利用できます。
また,目的によってはCGI使ってPOSTメソッドを使う方法もよいでしょう。
もう少しやりたいことを整理するとよいかと。
ご回答ありがとうございます。
HTTPではなくFTPを使えばよいのですか。
>もう少しやりたいことを整理するとよいかと。
やはりこの場では、どういうプログラムを組むかによって
回答がかわってくるんでしょうね。
チャットプログラムを組もうとしているのですが
初めに書いておくべきでした。
チャットだったらFTPは使いません。
というか,使えません。
・HTMLブラウザ上で行うチャットの場合
サーバー上のCGIに対してPOST(or GET)メソッドで通信。
・その他の場合(IRCだったり,独自の方式だったり)
特定のプロトコルを定めたり,参照したりして,
そのプロトコルに沿った通信。
FTPでも工夫すれば、できなくはないと思いますよ?
ただ、上書きしあってファイルがアップできないとか、いろいろ問題はありそうですけど…。
いっそのこと、CGIと連携して、
CGI(のログだけでもいい)をダウンロード、メッセージはCGIに送る、
そうするとCGIがログファイルに書きこむ…というふうなら、
HTTP(とCGI)だけでも不可能ではないですね。
どこかのサーバーを遠さないといけないし、
あんまりいい手段ではないかもしれませんけど^^;
HTTP,FTP以外の方法で、そういう方法があるんだと思います。
それを使うのがやっぱり一番でしょうかねぇ^^;
チャットプログラムといっても,
・HTTPとポーリングを利用する方法
・IRCなどの既知のプロトコルを利用する方法
・独自のプロトコルを利用する方法
など,複数の種類があります。
よくあるのが最初の方法で,
・メッセージを追加するのはcgiへのpostで
・メッセージの取得はcgi(または静的なリソース)へのget
・メッセージの更新はmeta要素でhttp-equiv属性にrefreshを与える
というのが一般的です。
24時間起動のサーヴァーを立ち上げて
Winsockで通信と言うこともできますね。
HTTPではCGIのGET,POSTが最適なようですね。
Perl言語は余りできないので難しいです。
色々試してみます。
VBでもパイプを使えばCGIは可能です。
しかし、Perl覚えるより面倒かもしれません。
CGIは、標準入出力をサポートしている言語であれば
Perlに限らず、C/C++でもPascalでもできますので、
気に入った言語を探すのもいいかもしれません。
(VBでCGIが面倒なのは、標準入出力ができないため、
APIでカバーする必要があるためです。
言い換えれば、VBで作った場合、面倒になるのは
標準入出力部分だけですので、一度クラス化してしまえば
あとは他の言語でやるのと同程度に簡単です)
まあ、Perlが一番、資料手に入れやすいのは確かです。
個人的にはBorland C++あたりをお勧めしますが・・・。
ツイート | ![]() |