1ファイルを転送するときのプログレスバーの作成を考えている
のですが、どうやってカウントアップしていけば良いか分かりません。
複数ファイルなら1ファイル送る毎にカウントアップしていけば
良いと思いますが、1ファイルの場合、回線速度か転送途中のファイル
サイズの取得が必要と思われますが、それらの取得の仕方が分かりません。
ご存知の方はご教授ください。よろしくお願いいたします
プログレスバーだけでよいのであれば
なぜ回線速度がいると思ったのか、それが知りたい。いらないぢゃん。
仮に知ることができてもその 100% が使えるわけぢゃ無いし無駄。
話が、送る側なのか受ける側なのかわからんが、とりあえず送る側なら
事前にファイルサイズはわかるし、どこまで送ったかも知ってるから
どこに問題があるのかわからん。
受ける側なら、事前にファイル長を知る必要があるだろうけど。
送る側に教えてもらうようにプロトコルを設計するといい。
どこまで受け取ったかは自分が知ってるわけだし。
IE だって
教えてもらえる http ダウンロードのときはバーが出る
教えてもらえない ftp ダウンロードのときはバーが出ない
どうやって転送しているのかによります。
C言語のFTPget関数を使って転送しています。
どこまで送ったかを知っているという事ですが、それはどうやって
知るのでしょうか?すみません。FTPget関数で転送しているのですが
どこまで送ったかを知る方法が分かりません。よろしくお願いします。
FTPget 関数て自作?
少なくとも C 言語の標準ライブラリにも VC++ 添付のライブラリにも Win32API にも FTPget なんて関数はないと思ったけど。
すみません。FTPget関数ではなくて、Win32APIのFtpGetFileと
FtpPutFile関数の間違いでした。これらの関数でファイル転送
を行うときに、転送途中のファイルがどこまで送られたか知る
ことができますか?
MSDNでINTERNET_STATUS_CALLBACKの説明を読みましょう
MSDNでFtpGetFileなりFtpPutFileなりを調べればInternetSetStatusCallbackのことが書いてあるじゃないか
つーわけでInternetSetStatusCallback
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/internetsetstatuscallback.asp
質問する前にMSDNをじっくり読みましょう(なるべく英語版のほうを)
英語は苦手と言う方がいますけれど、
一目見てすらすら読めてしまう人なんてそうそういやしません。
たいていの人は辞書首っ引きで読んでいます。
で、別に公開用に翻訳しているわけではないのですから
翻訳家がする様な綺麗な訳である必要もありません。
要は意味がわかれば良いわけでその辺は肩の力を抜いて
じっくり構えればよいと思います。
技術文書は別に難しい文法を使っているような例は少ないです。
むしろ足りないのは単語力なので辞書さえあれば何とか読めます。
問題はたまにスラングっぽい単語があったりすることですかねぇ。
あと、専門用語系。
英和辞典でも中辞典クラスならスラングもある程度引けます。
御参考まで。
みなさんご親切にありがとうございます。教えていただいた事を
参考にがんばってみようと思います。ありがとうございました。
まだ出来ていないので、解決チェックボックスは出来てからチェック
しようと思います。
みなさんのおかげで出来ました。
本当にありがとうございました。
ツイート | ![]() |