用ADO操作数据库的有关问题

用ADO操作数据库的问题、
代码
C/C++ code

void CshujukuDlg::OnBnClickedOk()
{
    // TODO: 在此添加控件通知处理程序代码
    CoInitialize(NULL);
    _ConnectionPtr pConn(_uuidof(ConnectionPtr));
    _RcordSetPtr pRst(_uuidof(RcordSetPtr));
    pConn->ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=db_test;Data Source=CHENGFENG-PC";
    pConn->Open("","","",-1);
    pRst=pConn->Execute("select * from student"),NULL,adCmdText);
    while(pRst!=rsEOF)
    {
        m_ListCtrl.SetItemData(0,(_bstr_t)pRst->GetCollect("stu_name"));
        pRst->MoveNext();
    }
    pRst->Close();
    pConn->Close();
    pRst.Release();
    pConn.Release();
    CoUninitialize();

}



C/C++ code

BOOL CshujukuDlg::OnInitDialog()
{
    CDialogEx::OnInitDialog();

    // 将“关于...”菜单项添加到系统菜单中。

    // IDM_ABOUTBOX 必须在系统命令范围内。
    ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
    ASSERT(IDM_ABOUTBOX < 0xF000);

    CMenu* pSysMenu = GetSystemMenu(FALSE);
    if (pSysMenu != NULL)
    {
        BOOL bNameValid;
        CString strAboutMenu;
        bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
        ASSERT(bNameValid);
        if (!strAboutMenu.IsEmpty())
        {
            pSysMenu->AppendMenu(MF_SEPARATOR);
            pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
        }
    }

    // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
    //  执行此操作
    SetIcon(m_hIcon, TRUE);            // 设置大图标
    SetIcon(m_hIcon, FALSE);        // 设置小图标

    // TODO: 在此添加额外的初始化代码
    CRect rc; 

    m_ListCtrl.GetWindowRect(&rc); //获取控件大小 

    //设置了四列,大小是一样的 

    m_ListCtrl.InsertColumn(0, _T("序号"), LVCFMT_CENTER, rc.Size().cx/4, 0); 

    m_ListCtrl.InsertColumn(1, _T("学号"), LVCFMT_CENTER, rc.Size().cx/4, 1); 

    m_ListCtrl.InsertColumn(2, _T("姓名"), LVCFMT_CENTER, rc.Size().cx/4, 2); 

    m_ListCtrl.InsertColumn(3, _T("班级"), LVCFMT_CENTER, rc.Size().cx/4, 3); 

    //LVS_EX_GRIDLINES是希望显示网格;LVS_EX_FULLROWSELECT是希望被选中时整行反色显示;LVS_EX_HEADERDRAGDROP是让其支持点击表头排序;LVS_EX_TWOCLICKACTIVATE是希望有鼠标在未被选中的行上移动的时候有一些效果 

    m_ListCtrl.SetExtendedStyle(m_ListCtrl.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_HEADERDRAGDROP /*| LVS_EX_TWOCLICKACTIVATE*/); 


    return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}



跟着视频一步步来的 还是会出错
#import "C:\Program Files\common files\system\ado\msado15.dll" no_namespace rename("EOF","rsEOF")
#include <afxwin.h>  
如果我这样放头文件 d:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxv_w32.h(16): fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>
1> 就会出现这个问题

#include <afxwin.h> // MFC 核心组件和标准组件

#import "C:\Program Files\common files\system\ado\msado15.dll" no_namespace rename("EOF","rsEOF")
如果我这样放 
1>e:\全新的路\代码\shujuku\shujuku\shujukudlg.cpp(184): error C2065: “pRst”: 未声明的标识符
1>e:\全新的路\代码\shujuku\shujuku\shujukudlg.cpp(184): error C2660: “Connection15::Execute”: 函数不接受 1 个参数
1>e:\全新的路\代码\shujuku\shujuku\shujukudlg.cpp(184): error C2059: 语法错误:“)”
1>e:\全新的路\代码\shujuku\shujuku\shujukudlg.cpp(185): error C2065: “pRst”: 未声明的标识符
1>e:\全新的路\代码\shujuku\shujuku\shujukudlg.cpp(185): error C2065: “rsEOF”: 未声明的标识符
就出现这个错误  

这个怎么解决啊、、 怎么办啊

------解决方案--------------------
pRst=pConn->Execute("select * from student"),NULL,adCmdText);


你的括号不匹配,以后写代码注意点