我想知道c和access具体怎么连啊?下面是我写的代码,可是总是出错
#import"C:\WINDOWS\system32\msado60.dll"no_namespace rename("EOF","adoEOF")
#include<adoid.h>
#include<adoint.h>
#include<adoint.h>
#include<stdio>
#include "stdafx. h"
void main()
{
class ADO
{
public:
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
public:
ADO();
virtual~ADO();
void OnInitADOConn();
_RecordsetPtr& OpenRecordset(CString sql);
void CloseRecordset();
void CloseConn();
UNIT GetRecordCount(_RecordsetPtr pRecordset);
void ADO::OnInitADOConn()
{
::CoInitialize(Null);
try
{
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect="pingyao.mdb";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(e.Description)
}
}
}
_RecordsetPtr& ADO::OpenRecordset(CString sql)
{
ASSERT(!sql.IsEmpty());
try
{
m_pRecordset.CreatInstance(_uuidof(Recordset));
m_pRecordset->Open(_bstr_t(sql),m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
return m_pRecordset;
}
void ADO::CloseRecordset()
{
if(m_pRecordset->GetStateOpen)
m_pRecordset->Close();
}
void ADO::CloseConn()
{
m_pConnection->Close;
::CoUninitialize();
}
UNIT ADO::GetRecordCount(_RecordsetPtr pRecordset)
{
int nCount=0;
try
{
pRecordset->MoreFirst();
}
#import"C:\WINDOWS\system32\msado60.dll"no_namespace rename("EOF","adoEOF")
#include<adoid.h>
#include<adoint.h>
#include<adoint.h>
#include<stdio>
#include "stdafx. h"
void main()
{
class ADO
{
public:
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
public:
ADO();
virtual~ADO();
void OnInitADOConn();
_RecordsetPtr& OpenRecordset(CString sql);
void CloseRecordset();
void CloseConn();
UNIT GetRecordCount(_RecordsetPtr pRecordset);
void ADO::OnInitADOConn()
{
::CoInitialize(Null);
try
{
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect="pingyao.mdb";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(e.Description)
}
}
}
_RecordsetPtr& ADO::OpenRecordset(CString sql)
{
ASSERT(!sql.IsEmpty());
try
{
m_pRecordset.CreatInstance(_uuidof(Recordset));
m_pRecordset->Open(_bstr_t(sql),m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
return m_pRecordset;
}
void ADO::CloseRecordset()
{
if(m_pRecordset->GetStateOpen)
m_pRecordset->Close();
}
void ADO::CloseConn()
{
m_pConnection->Close;
::CoUninitialize();
}
UNIT ADO::GetRecordCount(_RecordsetPtr pRecordset)
{
int nCount=0;
try
{
pRecordset->MoreFirst();
}