<環境>
WinXP,VB6
WininetAPIでFTPクライアントソフトを作成しています。
他の業者さんのFTPサーバ(Linux)からファイルを取得するのですが、
コネクトした際に接続先が相手の/rootフォルダに入ってしまいます。
(サーバ名、ユーザ名、パスワードは死ぬほど確認済)
おかしいと思いエクスプローラ(FTP://)で表示すると、
同じユーザー名とパスワードを入力後、ちゃんと指定されたフォルダへ
アクセスできます。
APIとエクスプローラとは違う物を利用しているのでしょうか?
エクスプローラと同じ動きをさせたい場合は、APIでは無く何を使えば良いのでしょうか?
・IEでPASVモードのチェック「切」にしても接続できました。
・IEでFTP://サーバアドレスで入力すると同じ/rootに入ります。
※ユーザー名とパスワードを指定してログインする方法は明日試します。
・/rootからフルパス入力をすれば正常にファイルが取得できますが、相手が
ホームディレクトリを変更すると接続できなくなるので使えません。
WinInet APIのことでいいのかな?
>・IEでFTP://サーバアドレスで入力すると同じ/rootに入ります。
APIで接続というのはこの状態と同じではないですか。
この後ディレクトリを移動させたいだけなら、
FtpSetCurrentDirectoryというAPIがあります。
>WinInet APIのことでいいのかな?
最初に書いてありましたね。
失礼しました。
subaruさん、レスありがとうございます。
本日、IEでユーザー名とパスワードを指定してコネクトしても
やはり/rootに入ってしまうようです。
ただ、匿名接続は禁止されているようです。
エクスプローラはAPI以外の何かを利用しているのかな・・・
同じ動作をさせたければ、winsockで一から作る以外無いのでしょうか?
・・・・ひぃ><
状況がよくわからないのですが、
ftp://user:password@server/
形式のアドレスを入力すると見えている仮想ディレクトリの
内容がIEとエクスプローラーで異なるということでしょうか?
そんなことはないと思うのですが・・・
内容が異なると言うか、何故かカレントフォルダが違うんです。。。
そんなはず無いですよね? 僕もそう思います。
要するに、IEと自作のソフトでは接続したFTPサーバーの
初期フォルダが違うと言うことですか?
IEがどのようになっているか知りませんが、自作の
FTPプログラムには初期「フォルダの設定」と言うのを
通常はつけます。