1ファイルを転送する時のプログレスバーを作成するには?

解決


プログ  2006-10-05 18:36:51  No: 63185

1ファイルを転送するときのプログレスバーの作成を考えている
のですが、どうやってカウントアップしていけば良いか分かりません。
複数ファイルなら1ファイル送る毎にカウントアップしていけば
良いと思いますが、1ファイルの場合、回線速度か転送途中のファイル
サイズの取得が必要と思われますが、それらの取得の仕方が分かりません。

ご存知の方はご教授ください。よろしくお願いいたします


tetrapod  2006-10-05 18:51:26  No: 63186

プログレスバーだけでよいのであれば
なぜ回線速度がいると思ったのか、それが知りたい。いらないぢゃん。
仮に知ることができてもその 100% が使えるわけぢゃ無いし無駄。

話が、送る側なのか受ける側なのかわからんが、とりあえず送る側なら
事前にファイルサイズはわかるし、どこまで送ったかも知ってるから
どこに問題があるのかわからん。

受ける側なら、事前にファイル長を知る必要があるだろうけど。
送る側に教えてもらうようにプロトコルを設計するといい。
どこまで受け取ったかは自分が知ってるわけだし。

IE だって
教えてもらえる http ダウンロードのときはバーが出る
教えてもらえない ftp ダウンロードのときはバーが出ない


dairygoods  2006-10-05 18:51:33  No: 63187

どうやって転送しているのかによります。


プログ  2006-10-05 18:58:18  No: 63188

C言語のFTPget関数を使って転送しています。


プログ  2006-10-05 19:16:49  No: 63189

どこまで送ったかを知っているという事ですが、それはどうやって
知るのでしょうか?すみません。FTPget関数で転送しているのですが
どこまで送ったかを知る方法が分かりません。よろしくお願いします。


Geo=TK3  2006-10-05 20:50:52  No: 63190

FTPget 関数て自作?
少なくとも C 言語の標準ライブラリにも VC++ 添付のライブラリにも Win32API にも FTPget なんて関数はないと思ったけど。


プログ  2006-10-06 02:47:17  No: 63191

すみません。FTPget関数ではなくて、Win32APIのFtpGetFileと
FtpPutFile関数の間違いでした。これらの関数でファイル転送
を行うときに、転送途中のファイルがどこまで送られたか知る
ことができますか?


旧通りすがり  2006-10-06 05:47:04  No: 63192

MSDNでINTERNET_STATUS_CALLBACKの説明を読みましょう


  2006-10-06 05:56:47  No: 63193

MSDNでFtpGetFileなりFtpPutFileなりを調べればInternetSetStatusCallbackのことが書いてあるじゃないか

つーわけでInternetSetStatusCallback
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/internetsetstatuscallback.asp

質問する前にMSDNをじっくり読みましょう(なるべく英語版のほうを)


PATIO  2006-10-06 20:58:31  No: 63194

英語は苦手と言う方がいますけれど、
一目見てすらすら読めてしまう人なんてそうそういやしません。
たいていの人は辞書首っ引きで読んでいます。
で、別に公開用に翻訳しているわけではないのですから
翻訳家がする様な綺麗な訳である必要もありません。
要は意味がわかれば良いわけでその辺は肩の力を抜いて
じっくり構えればよいと思います。
技術文書は別に難しい文法を使っているような例は少ないです。
むしろ足りないのは単語力なので辞書さえあれば何とか読めます。
問題はたまにスラングっぽい単語があったりすることですかねぇ。
あと、専門用語系。
英和辞典でも中辞典クラスならスラングもある程度引けます。
御参考まで。


プログ  2006-10-06 22:06:46  No: 63195

みなさんご親切にありがとうございます。教えていただいた事を
参考にがんばってみようと思います。ありがとうございました。
まだ出来ていないので、解決チェックボックスは出来てからチェック
しようと思います。


プログ  2006-10-11 02:53:23  No: 63196

みなさんのおかげで出来ました。
本当にありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加