首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

下载进度条的有关问题

2012-06-08 
下载进度条的问题下载用了URLDownloadToFile,关于第五个参数LPBINDSTATUSCALLBACK lpfnCB就别说了,我是另

下载进度条的问题
下载用了URLDownloadToFile,关于第五个参数LPBINDSTATUSCALLBACK lpfnCB就别说了,我是另起线程显示进度条,但是进度条跟下载进度不一致,下面是代码

C/C++ code
void CMyClientDlg::OnBnClickedButton3(){    // TODO: 在此添加控件通知处理程序代码    m_ThreadSpeed = CreateThread(0,0,ThreadSpeed,&m_speed,0,0); //创建线程     URLDownloadToFile(NULL,"http://downmini.kugou.com/Kugou2012.exe","d:\\kugou.exe",0,NULL);}DWORD WINAPI CMyClientDlg::ThreadSpeed(LPVOID lpParameter)  {      CProgressCtrl *Speed = (CProgressCtrl*)lpParameter;     //文件总大小为10451552    Speed->SetRange(0,10451552); //设置进度条的范围     ULONG size = 0;    char *filepath = "d:\\kugou.exe";     while (size <= 10451552)    {          //获取文件大小          HANDLE handle = CreateFile(filepath, FILE_READ_EA, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);            if (handle != INVALID_HANDLE_VALUE)            {                   size = GetFileSize(handle, NULL);            CloseHandle(handle);             Speed->SetPos(size); //进度条的位置            Sleep(2);        }           }           return 0;  }  


[解决办法]
探讨
引用:
下载用了URLDownloadToFile,关于第五个参数LPBINDSTATUSCALLBACK lpfnCB就别说了,我是另起线程显示进度条,但是进度条跟下载进度不一致,下面是代码

C/C++ code

void CMyClientDlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
m_ThreadSp……

热点排行