VC语言

本类阅读TOP10

·VC++ 学习笔记(二)
·用Visual C++打造IE浏览器(1)
·每个开发人员现在应该下载的十种必备工具
·教你用VC6做QQ对对碰外挂程序
·Netmsg 局域网聊天程序
·Windows消息大全
·VC++下使用ADO编写数据库程序
·VC++学习笔记(四)
·非法探取密码的原理及其防范
·怎样在VC++中访问、修改注册表

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
连接Oracle的ADO操作de简单多线程~

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

多线程 (初始化连接数据库 有自己的Splash 显示图片)

// Thread in MySplash Init

       HWND hWnd=this->GetSafeHwnd();

       m_pThread=AfxBeginThread(MyAdoConnect,hWnd,THREAD_PRIORITY_NORMAL);//启动线程THREAD_PRIORITY_HIGHEST

       m_pThread->m_bAutoDelete=FALSE;    //线程为手动删除

// 线程函数

UINT MyAdoConnect(LPVOID pParam)

{

       // COM初始化

       ::CoInitialize(0);

       _ConnectionPtr pConn;

       HRESULT hr;

       hr = pConn.CreateInstance(__uuidof(Connection));

      

       if(SUCCEEDED(hr))

       {

              try

              {

                     pConn->ConnectionString = "Provider=OraOLEDB.Oracle.1;Password=LMS;Persist Security Info=True;User ID=LMS;Data Source=oradb1";//设置连接字符串

                     pConn ->ConnectionTimeout = 10;                //设置连接的超时时间,可选

                     pConn ->CursorLocation    = adUseServer; //设置光标的位置,可选

                     pConn ->Open("","","",-1);

              }

              catch(_com_error& e)

              {

                     CString StrErr;

                     StrErr.Format("出错,连接数据库错误~\n错误:%s",e.ErrorMessage());

                     AfxMessageBox(StrErr);

                     ::PostMessage( (HWND)pParam,WM_CLOSE,0,0);

                     bpConn = false;

                     return FALSE;

              }

       }

       theApp.SetConn(pConn);

       ::PostMessage( (HWND)pParam,WM_CLOSE,0,0);

       bpConn = true;

       return TRUE;

}




相关文章

相关软件