Esempio n. 1
0
LRESULT CMainDlg::OnDownload(UINT /*uMsg*/, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/)
{
	WCHAR wcPath[MAX_PATH] = { 0 }, wcData[MAX_PATH] = { 0 };
	int itype = lParam;
	if (itype)
	{
		//下载文件
		if (m_hDownload != NULL)
		{
			::PostMessage(m_hDownload, WM_DOWNLOAD, wParam, lParam);
		}
	}
	else
	{
		std::string *precv = (std::string *)wParam;
		std::string str;
		int is = precv->find_last_of('/');
		str.append(*precv, is + 1, precv->size());
		c2w(wcData, MAX_PATH, str.c_str());
		CFileDialog savedlg(FALSE, NULL, wcData, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, L"文件 (*.jpg; *.bmp; *.png)", m_hWnd);
		if (IDOK == savedlg.DoModal(*this))
		{
			memset(wcData, 0, MAX_PATH);
			c2w(wcData, MAX_PATH, precv->c_str());
			wcscpy(wcPath, savedlg.m_szFileName);
			URLDownloadToFile(0, wcData, wcPath, 0, NULL);
		}
		delete precv;
	}
	return 0;
}
Esempio n. 2
0
void CExportLogDlg::OnBrowse()
{
    CFileDialog savedlg(FALSE, "xml", m_sFilename);
    if(IDOK == savedlg.DoModal())
    {
        m_sFilename = savedlg.GetPathName();
        UpdateData(FALSE);
    }
}