// DownCallback.cpp : ±¸Çö ÆÄÀÏÀÔ´Ï´Ù. // #include "stdafx.h" #include "ConsoleUpdater.h" #include "DownCallback.h" #include "ConsoleUpdaterDlg.h" // CDownCallback CDownCallback::CDownCallback() { } CDownCallback::~CDownCallback() { } STDMETHODIMP CDownCallback::OnProgress(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText) { UNREFERENCED_PARAMETER(ulStatusCode); if (ulProgressMax == 0) return S_OK; double nPPercent = (double)1 / m_pdlg->m_nTotalCount * 100; double nBPercent = (double)m_pdlg->m_iTerasferring / m_pdlg->m_nTotalCount * 100; double nPercent = (double)ulProgress / ulProgressMax; int nTotalPercent = (int)floor(nBPercent + (nPercent * nPPercent)); int nNowPercent = (int)floor(nPercent * 100); m_pdlg->m_prgTotal.SetPos(nTotalPercent); m_pdlg->m_prgNow.SetPos(nNowPercent); return S_OK; }