建一个Test工程
我把整个的窗体分为三个视图,类似这种形状,|—
而这三个视图,共同使用一个数据库连接,只是操作的表不同而已
所以我在 MainFrame 里写了
public:
_ConnectionPtr m_pConnection;然后想在各个视图里使用这个连接
请问该如何使用?!我是这么写的,编译没有错误,可是一执行就出错CTestApp* pApp=(CTestApp)AfxGetApp();
CMainFrame* pFrame=(CMainFrame*)pApp->m_pMainWnd;Draw(pFrame->m_pConnection);请问问题出在什么地方?!
类似的问题该如何解决?!
谢谢了!

解决方案 »

  1.   

    call CoInitialize(NULL) in CXXXApp::InitInstance();
    create the connection object before using it
    m_pConnection.CreateInstance("ADODB.Connection");
    m_pConnection->Open("Provider=OraOLEDB.Oracle;Data Source=workdb;User Id=Onega;Password=sa;"
    ,"","",adConnectUnspecified);
      

  2.   

    你只要将
    public:
    _ConnectionPtr m_pConnection;
    放在应用程序类中就可以了,在应用程序初始化地方
    ::InitInstance();
    进行联接,最后在用到连接的地方申明一下
    extern 应用程序类 theApp;
    然后用
    theApp.m_pConnection;