odbc如何操作带密码的excel文件?
CDatabase database;
CString sSql;
CString sItem1, sItem2;
CString sDriver;
CString sDsn;
CString sFile,sPath;
GetModuleFileName(NULL,sPath.GetBufferSetLength (MAX_PATH+1),MAX_PATH);
sPath.ReleaseBuffer ();
int nPos;
nPos=sPath.ReverseFind ('\\');
sPath=sPath.Left (nPos);
sFile = sPath + "\\Demo.xls";
sDriver = GetExcelDriver();
if (sDriver.IsEmpty())
{
return;
}
sDsn.Format("ODBC;DRIVER={%s};DSN='';DBQ=%s", sDriver, sFile);
TRY
{
database.Open(NULL, false, false, sDsn);
CRecordset recset(&database);
sSql = "SELECT Name, Age "
"FROM Exceldemo " ;
"ORDER BY Name ";
recset.Open(CRecordset::forwardOnly, sSql, CRecordset::readOnly);
while (!recset.IsEOF())
{
recset.GetFieldValue("Name", sItem1);
recset.GetFieldValue("Age", sItem2);
m_ExcelList.AddString( sItem1 + " --> "+sItem2 );
recset.MoveNext();
}
database.Close();
}
CATCH(CDBException, e)
{
AfxMessageBox("cuo wu: " + e->m_strError);
}
END_CATCH;
以上代码可以正常运行,但对有密码的文件不行,请问如何修改?