The project of U-WA-
http://uwa.potetihouse.com/
トップページ > 過去ログ > 記事閲覧
アイコン カレントディレクトリの取得について
日時: 2008/02/15 21:25
名前: ゆず

はじめてFTPに挑戦します。
FTPにてUNIXサーバからファイルのコピーをしたいのですが、まずコピー元のフォルダを指定しようと、
ディレクトリ操作をしたかったのですがどうも上手くいきません。
というのは相手サーバ(UNIX)は、ホームディレクトリ=ルートディレクトリではないため、カレントディレクトリを指定する前にあらかじめ接続時のカレントディレクトリを取得し、そのフルパスを下記※1の「strCurrentPath」にセットしなくてはいけないと考えています。
しかし、そのパスの取得方法がわからず途方にくれている次第です。
(もっとも「TKFP.IO.DirectoryInf」のパラメータが相対パスなら問題なかったのでしょうがフルパスでないといけないようなので...)

▼こんな感じにコーディングしました▼
'接続用の情報作成
Dim bp As New TKFP.Net.BasicFtpLogon(a_UserName, a_PassWord)
'POPクライアントクラスの定義
FtpClient = New TKFP.Net.FtpClient(bp, a_ServerName, 21)
'パッシブモードに設定
FtpClient.ConnectionMode = TKFP.Net.ConnectionModes.Passive
'リストの取得コマンドを設定
FtpClient.ListType = TKFP.Net.ListType.LIST
'取得したリスト情報の有効時間を設定
FtpClient.ListCacheValidityInterval = 60
FtpClient.FileSystemCacheValidityInterval = 60
'LIST情報の解析クラスを指定
FtpClient.ListDataLoader = New TKFP.IO.UnixListDataLoader
'接続開始
FtpClient.Connect()

CurrentDirectory = New TKFP.IO.DirectoryInfo(FtpClient, strCurrentPath)  ←※1

どなたかご指導のほど宜しくお願いしますm(__)m

Page: 1 |

ファイル Re: カレントディレクトリの取得について ( No.1 )
日時: 2008/02/16 20:36
名前: Toki◆pRU.c9X.EOI

以前にも同様の要望を頂いたことがありました。

基本的にはカレントディレクトリは事前に把握していると思われますが、

条件によっては不明となることを認識しました。


ライブラリ内部では、接続時点でのカレントディレクトリを調べるようになっているので、

接続時のディレクトリを返すプロパティなりを追加するよう検討してみます。
ファイル Re: カレントディレクトリの取得について ( No.2 )
日時: 2008/02/18 10:05
名前: ゆず

Tokiさん、お返事ありがとうございます。
今の時点ではカレントディレクトリの取得はできなかったんですね。
わかりました。
ではその部分の仕様はとりあえず待たせてもらいます(^^
お手数ですが宜しくお願いしますm(__)m
ファイル Re: カレントディレクトリの取得について ( No.3 )
日時: 2008/02/20 22:24
名前: Toki◆pRU.c9X.EOI

お待たせしました

只今 Version 1.3.9を公開しました。
お試しください
ファイル Re: カレントディレクトリの取得について ( No.4 )
日時: 2008/02/25 17:51
名前: ゆず

Tokiさん
ありがとうございます。

試してみたいのですが、UNIXサーバがダウンしてしまって復旧中のため、
すぐには試せないようです(^^;

復旧してからになりますが、後日また状況を報告いたします(^^/
ファイル ありがとうございますm(__)m ( No.5 )
日時: 2008/02/28 17:31
名前: ゆず

ようやくサーバ復旧しました。
Tokiさん、DLLの対応ありがとうございましたm(__)m

「FtpClient.StartPath」から、接続時のカレントディレクトリを取得することができました。
これで随分楽になりました。

よ〜しこれで完成〜と思ったらまた別の問題がおきました。
別スレを起こしますのでお手数ですがご協力お願いしますm(__)m

Page: 1 |