4,012
社区成员
发帖
与我相关
我的任务
分享
#include "stdafx.h"
#include "dialogtest1.h"
#include "resource.h"
#include <string>
#define MAX_LOADSTRING 100
using namespace std;
_ConnectionPtr pConn(__uuidof(Connection)); //数据库连接
_RecordsetPtr pRst=NULL; //数据集
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), NULL, Main_Proc);
return 0;
}
BOOL WINAPI Main_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg)
{
HANDLE_MSG(hWnd, WM_INITDIALOG, Main_OnInitDialog);
HANDLE_MSG(hWnd, WM_COMMAND, Main_OnCommand);
HANDLE_MSG(hWnd,WM_CLOSE, Main_OnClose);
}
return FALSE;
}
BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam)
{
return TRUE;
}
void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
switch(id)
{
case IDOK:
{
// MessageBox(hwnd,"test","Test",MB_OK);
CoInitialize(NULL);
try
{
pConn->ConnectionString="Provider=SQLOLEDB; Server=Z;Data Source=Z;Initial Catalog=人事管理系统;User ID=sa;Password=123456";
pConn->Open("","","",adConnectUnspecified);
}
catch(_com_error &e)
{
::MessageBoxA(NULL,e.ErrorMessage(),"警告",MB_OK|MB_ICONWARNING);
}
try
{
if(S_OK==pRst.CreateInstance(__uuidof(Recordset)))
{
::MessageBoxA(NULL,"创建数据集成功!","Message",MB_OK);
}
else
{
::MessageBoxA(NULL,"创建数据集失败!","Message",MB_OK);
//return -1;
}
pRst=pConn->Execute("select * from 员工信息",NULL,adCmdText);
}
catch (_com_error &e)
{
::MessageBoxA(NULL,e.Description(),"提示",MB_OK|MB_ICONWARNING);
}
}
break;
case IDCANCEL:
{
HWND buf=NULL;
pRst->MoveNext();
if(pRst->adoEOF)
{
buf=GetDlgItem(hwnd,IDCANCEL);
EnableWindow(buf,false);
}
buf=GetDlgItem(hwnd,IDC_EDIT1);
SetWindowText(buf,(_bstr_t)pRst->GetCollect("员工姓名"));
}
break;
default:
break;
}
}
void Main_OnClose(HWND hwnd)
{
pRst->Close();
pConn->Close();
pRst.Release();
EndDialog(hwnd, 0);
}