描述:
ActiveX控件,可以在网页上调用,用javascript控制,
要求:
1.功能:
从网上指定的一地址自动下载一zip文件到指定的一文件夹中,然后解密该文件,
再解压缩该文件.网页上显示要有提示信息,如下载进度百分比,下载完后解密提示,
解压提示,
可以用javascrip控制下载,如指定保存本地目录,下载文件的http地址,
开始下载,中止下载,是否解密,是否解压等定义
关于解密算法可以根据加密算法来定(目前加密方法未定).
我想了解的是,
这种要求的active控件的可行性,和谁愿意合作开发(有酬,条件你自己开),
由于我对c不懂,只会java做求可行性和合作
解决方案1:
太可以了:
下载到临时目录,返回文件路径
CString CDownInfoDlg::DownURL(CString strURL)
{
CInternetSession m_Session("DigitalTitan");
CHttpFile* pFile=NULL;
CException* e;
TCHAR szTempPath[MAX_PATH],szTempFile[MAX_PATH];
DWORD dwResult=::GetTempPath(MAX_PATH,szTempPath);
CString strURLPath;
GetTempFileName(szTempPath,_T("DigitalTitan_"),0,szTempFile);
strURLPath=szTempFile;
TRY
{
pFile=(CHttpFile*)m_Session.OpenURL(strURL);
}
CATCH_ALL(e)
{
pFile=NULL;
AfxMessageBox("URL地址不合法",MB_ICONINFORMATION);
return "";
}
END_CATCH_ALL
if(pFile)
{
DWORD dwStatus;
DWORD dwBufLen=sizeof(dwStatus);
BOOL bSuccess=pFile->QueryInfo(HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER,&dwStatus,&dwBufLen);
if(bSuccess&&dwStatus>=200&&dwStatus<300)
{
CStdioFile m_File;
if(m_File.Open(strURLPath,CFile::modeWrite|CFile::modeCreate|CFile::typeBinary))
{
BYTE pBuf[1024];
DWORD dwRead;
do
{
dwRead=pFile->Read(pBuf,1024);
m_File.Write(pBuf,dwRead);
}
while(dwRead>0);
m_File.Close();
}
}
pFile->Close();
delete pFile;
}
else
{
m_Session.Close();
}
return strURLPath;
}