DOBON.NET DOBON.NETプログラミング掲示板過去ログ

AcceptSocket

  • 題名: AcceptSocket
  • 著者: とも
  • 日時: 2005/09/15 17:19:32
  • ID: 12802
  • この記事の返信元:
    • (なし)
  • この記事への返信:
  • ツリーを表示
環境/言語:[WinXP,VisualBasic.Net]
分類:[.NET]

こんにちは。
FTPでファイルのアップロードを作成しましたが、
半角英数字の場合正常なのですが、
ファイル名が漢字の場合、AcceptSocketで固まってしまいます。
漢字は使用できないのでしょうか?
知っている方がいらっしゃいましたら教えてください。
お願いします。
プログラム一部
Dim ipa As IPAddress
Dim lscu As Sockets.Socket
ipa = Dns.Resolve(Dns.GetHostName()).AddressList(0)
Dim ipendpu As New IPEndPoint(ipa, 11000)
Dim tlu As New Sockets.TcpListener(ipendpu)
Dim param As String
'FTPコマンド
Dim cmd As String = data.Split(" "c)(0)
'ファイル名
Dim fn As String = data.Split(" "c)(1)
'ファイルアップロード用
Dim br As New IO.BinaryReader( _
New IO.FileStream(fn,IO.FileMode.Open,IO.FileAccess.Read))

Try
'受信接続要求の待機を開始
tlu.Start()
'IPアドレスとポート番号を書式化
param = ipa.ToString().Replace(".", ",") & ","
param &= CStr(ipendpu.Port \ 256) & ","
param &= CStr(ipendpu.Port Mod 256)
SendData("PORT " & param)
'コマンドを送信
SendData(cmd & " " & IO.Path.GetFileName(fn))
'データ送受信用Socket
'データ送受信用Socket()
lscu = tlu.AcceptSocket→ここでかたまります。
以下省略
  • 題名: Re[1]: AcceptSocket
  • 著者: おおた
  • 日時: 2005/09/16 8:02:52
  • ID: 12814
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
■No12802に返信(ともさんの記事)
> FTPでファイルのアップロードを作成しましたが、
> 半角英数字の場合正常なのですが、
> ファイル名が漢字の場合、AcceptSocketで固まってしまいます。
> 漢字は使用できないのでしょうか?

FTP の仕様自体に漢字に対する特別の配慮はないので、サーバに依存するんだ
と思います。

TcpListener.AcceptSocket メソッドの呼び出しが制御を戻さないというより、
FTP の STOR コマンドが失敗しているため、サーバがデータ接続の確立を始め
ないのですよね。

STOR コマンドの応答には、何が返っていますか?

DOBON.NET | プログラミング道 | プログラミング掲示板