※ ChatGPTを利用し、要約された質問です(原文:BinaryWrite サーバ間ファイル書き込み)
BinaryWriteサーバ間ファイル書き込みの方法と制約
このQ&Aのポイント
ASPのBinaryWriteを使用してサーバ間でファイルを書き込む方法についての質問です。
現在、クライアントからサーバAのWebページにアクセスし、サーバAの別ページとソケットで接続し、データを受信しています。
受信したデータをテキストファイルに書き込みたいのですが、サーバBに保存することができないようです。
こんにちは。よろしくお願いします。
ASPでBASP21のソケットオブジェクトを利用して、がちょがちょやってる最中です。
1.クライアントからサーバAのWebページへアクセス。
↓
2.アクセスすると、サーバAの別ページをソケットで繋げて、データを受信。
↓
3.受信したデータをテキストファイルの中に書き込み、ファイル保存。
そんな感じの機能を作りこんでいる最中です。
大体思い通りになってはいるのですが。。。
3番で少し詰まっています。
「3.ファイル保存」を、サーバBに対して行ないたいのですが、すんなり出来ませんでしたっけ?
FileSystemObjectのCreateTextFileは、サーバまたぐと無理みたいだし、
BASP21のBinaryWriteで実現できたような記憶が無きにしも非ずなのですが、「あれ?出来ないぞ?」
となっておりまして。。。
==================================================
Set bobj = Server.CreateObject("basp21")
Set bsocket = Server.CreateObject("basp21.socket")
rc1 = bsocket.Connect("hogehoge.co.jp", 80, 180)
host = "Host: hogehoge.co.jp" & vbCrLf
rc1 = bsocket.write ("GET /system/hogehoge.asp?para=abc HTTP/1.0" & vbCrLf & host & vbCrLf)
ヘッダ読み飛ばし(略
rc1 = bsocket.read(datax,1)
rc1 = bobj.BinaryWrite(datax, "●●●●")
==================================================
●●●●箇所を
サーバAのフルパスならもちろん問題なし。
「D:\hogehoge.txt」
サーバAのネットワークパスならアウト。
「\\hogehoge_a\drv_d\hogehoge.txt」
サーバBのネットワークパスもアウト。
「\\hogehoge_b\drv_d\hogehoge.txt」
サーバBのネットワークドライブを切ってもアウト。
「V:\hogehoge.txt」
。。。やっぱ、サーバ間またいでファイル保存ってこのままじゃ出来ませんでしたっけ?
あんまり粘る時間も無いので、「4.仕方ないから、サーバAからサーバBにファイルをコピーする」
処理でも作ろうかどうしようか悩んでいるところです。
すみませんが、アドバイスのほどよろしくお願いしますm(_ _)m
お礼
アドバイスいただいたのに、お礼が遅くなりすみません。 四苦八苦した結果、結局力量不足だったため、仕様の方が変わる形になって実現してしまいました。 どうしてもサーバまたげなかった。。。(だったかな。 なので、自サーバ内で済むように変更してみたらあっさり行った感じだったかと思います。 。。。ん~。勉強不足~@w@; アドバイスありがとうございました。