VC/MFC
bohut
这个作者很懒,什么都没留下…
展开
-
显示详细的ADO出错信息
我们在用ado连接数据时,经常会出现一些异常,而用_com_error::ErrorMessage()有时候给出的错误信息又太不直观。因此,我给出下面的代码,以期得到更加全面直观的错误信息 long lErrCount= pConn->GetErrors()->GetCount(); //pConn是你的连接变量,_ConnectionPtr型 _bstr_t add; CStri原创 2004-08-26 13:57:00 · 845 阅读 · 0 评论 -
剪切板上文本数据的传送
把文本放置到剪接板上:CString source; //put your text in sourceif(OpenClipboard()){ HGLOBAL clipbuffer; char * buffer; EmptyClipboard(); clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength()+1);原创 2004-10-29 14:33:00 · 1032 阅读 · 0 评论 -
怎么用一个程序向另一个程序发送字符并让其显示出来
首先通过FindWindow取得windows程序的窗口句柄,然后通过GetDlgItem取得其中输入框的窗口句柄,最后,向该窗口句柄发送WM_CHAR消息即可显示字符例如,对于Notepad窗口,可以以如下的方式向其中输入一个a:// 取得记事本的窗口句柄HWND hWnd = ::FindWindow( NULL , "未定标题 - 记事本" );// 取得其中输入框的窗口句柄HWN原创 2004-10-29 14:36:00 · 1822 阅读 · 0 评论 -
如何改变标题栏的宽度
方法一:NONCLIENTMETRICS ncm;ncm.cbSize = sizeof( NONCLIENTMETRICS );::SystemParametersInfo( SPI_GETNONCLIENTMETRICS,sizeof( NONCLIENTMETRICS ),&ncm,0);ncm.lfCaptionFont.lfHeight = -300;::SystemPara原创 2004-10-29 15:47:00 · 2129 阅读 · 0 评论 -
在利用Mfc编写activex控件时取得控件容器句柄
//如果是取容器接口指针LPOLECONTAINER lpContainer;HRESULT hr = m_pClientSite->GetContainer(&lpContainer);//如果是取窗口句柄HWND m_hWndParent;IOleInPlaceSite *pOleInPlaceSite = NULL;if (NOERROR==m_pClientSite->QueryInt原创 2004-11-01 09:14:00 · 1619 阅读 · 0 评论 -
读写SQL+ADO的datetime
COleDateTime oleDate = COleDateTime::GetCurrentTime();_variant_t vtFld;vtFld.vt = VT_DATE;vtFld.date = oleDate;pRecordSet4->PutCollect("date", vtFld); 读时间值_bstr_t TheValue=m_pset->Fields->GetItem("出原创 2004-10-29 14:30:00 · 1362 阅读 · 0 评论 -
用程序实现关闭和重起计算机
关闭计算机OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据结构OsVersionInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);GetVersionEx(&OsVersionInfo); //获取操作系统版本信息if(OsVersionInfo.dwPlatformId == VER_PLATFORM_WIN原创 2004-10-29 14:32:00 · 1128 阅读 · 0 评论 -
使用SQLDMO控制 SQL Server
微软为外部程序的MS SQL Server服务访问提供了功能强大的COM接口,通过这些接口,可以不费吹灰之力就可以方便的访问SQL的服务。第一步:在MS SQL Server的安装目录下面找到在sqldmo.rll文件,然后#import "sqldmo.rll" no_namespace这样就生产了sqldmo.tlh和sqldmo.tli文件,里面包含了SQL的COM接口的定义和实原创 2004-12-08 08:46:00 · 1130 阅读 · 0 评论 -
如何从dll文件导出对应的lib文件
Visual C++ 开发工具提供了两个命令行工具,一个是dumpbin.exe,另一个是lib.exe。利用这两个工具即可从dll导出其对应的lib。1、在命令行执行:dumpbin /exports yourdll.dll > yourdll.def2、编辑 yourdll.def 文件,使之格式与.def文件格式一致。比如:EXPORTS; fn1; fn原创 2005-01-12 08:59:00 · 1533 阅读 · 0 评论 -
枚举打印机名
DWORD dwFlags = PRINTER_ENUM_FAVORITE | PRINTER_ENUM_LOCAL;LPPRINTER_INFO_2 pPrinters;DWORD cbPrinters;DWORD cReturned, i; EnumPrinters (dwFlags, NULL, 2, NULL, 0, &c原创 2004-10-26 10:03:00 · 1196 阅读 · 0 评论 -
执行dos命令而不显示界面
#define EXECDOSCMD "ping www.sohu.com" //可以换成你的命令BOOL ExecDosCmd(){ SECURITY_ATTRIBUTES sa; HANDLE hRead,hWrite; sa.nLength = sizeof(SECURITY_ATTRIBUTES); sa.lpSecurityDescriptor = NULL; sa.bInherit原创 2004-10-28 12:40:00 · 2311 阅读 · 0 评论 -
介绍几个操作文件的API函数
在VC中,大多数情况对文件的操作都使用系统提供的 API 函数,但有的函数我们不是很熟悉,以下提供一些文件操作 API 函数介绍: 一般文件操作 APICreateFile打开文件要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门。ReadFile从文件中读取字节信息。 在打开文件获得了文件句柄之后,则可以通过该函数读取数据。Wri原创 2004-10-25 11:26:00 · 3292 阅读 · 0 评论 -
ADO连接字符串大全
This page contains sample ADO connection strings for ODBC DSN / DSN-Less,OLE DB Providers, Remote Data Services (RDS), MS Remote, MS DataShape. Also included are ADO.NET connection strings for each转载 2004-10-21 15:21:00 · 1413 阅读 · 0 评论 -
集成Pro*C/C++到Visual C++环境
本文介绍如何将Pro*C/C++集成到Microsoft Visual C++ 5.0开发环境中。包括以下内容: 增加Pro*C/C++到Tools菜单列表中。 指定文件路径。 建立项目文件。 增加Pro*C/C++到Tools菜单列表 当将Pro*C/C++增加到Tools菜单列表中后,我们就可以在Visual C++ 5.0中直接使用Pro*C/C++预编译器了。下原创 2004-10-21 15:36:00 · 2422 阅读 · 1 评论 -
得到显存的大小
#include #pragma comment(lib, "guids.lib") LPDIRECTDRAW2 lpdd; HRESULT ddrval; CoInitialize(NULL); ddrval = CoCreateInstance(CLSID_DirectDraw, NULL, CLSCTX_ALL, IID_IDirectDraw2, (void**)&lpdd);原创 2004-10-26 10:04:00 · 2733 阅读 · 2 评论 -
获得exe的图标
1.HICON hIcon=::ExtractIcon(AfxGetInstanceHandle(),_T("NotePad.exe"),0);if (hIcon &&hIcon!=(HICON)-1){ pDC->DrawIcon(10,10,hIcon);}DestroyIcon(hIcon);2.SHFILEINFO info;CString strFileName = "C://Wi原创 2004-10-29 09:40:00 · 939 阅读 · 0 评论 -
获取汉字拼音的一个类
/********************以下是头文件********************************//* 名称: Py.h * 实现功能: 获取拼音 * 版本: 1.00 * 说明: 本版本由网上获得的一个Dephile程序"翻译"而来 * 翻译者: bohut * 完成时间 : 2003.07.08 */#pragma once#define PYMUSICCOUNT 4原创 2004-10-29 10:54:00 · 5423 阅读 · 4 评论 -
价格数字转换成大写汉字的一个类
/****************************以下是头文件******************************/class CNumToHan {public: CString Chang(CString num); CString ChangNum(int num); CNumToHan(); virtual ~CNumToHan();};/**************原创 2004-10-29 10:58:00 · 1625 阅读 · 0 评论 -
如何判断一个文件或目录是否存在
WIN32_FIND_DATA fd; HANDLE hFind = FindFirstFile("d://cdr//te", &fd); if ((hFind != INVALID_HANDLE_VALUE) && (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) { // 存在 } FindClose(hFind);原创 2004-10-25 11:23:00 · 1452 阅读 · 0 评论 -
获取磁盘分区
size_t szAllDriveStrings = GetLogicalDriveStrings(0,NULL);char *pDriveStrings = new char[szAllDriveStrings + sizeof(_T(""))];GetLogicalDriveStrings(szAllDriveStrings,pDriveStrings);size_t szDriveStrin原创 2004-10-26 10:05:00 · 1088 阅读 · 0 评论 -
用程序打开"我的电脑"
ShellExecute(NULL,NULL,"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}",NULL,NULL,SW_SHOWNORMAL);如果打开我的文档:ShellExecute(NULL,NULL,"::{450D8FBA-AD25-11D0-98A8-0800361B1103}",NULL,NULL,SW_SHOWNORMAL);原创 2004-10-29 09:41:00 · 1238 阅读 · 0 评论 -
如何拖动无标题栏窗体
先新建一个基于对话框的工程然后打开ClassWizard选择Class Info选项卡,在Message Filter下选Window我后在MessageMaps选项卡中的ObjectIDs选择你的对话框,在Messages中选择WM_NCHITTEST单击Add Function再单击Edit Code然后添加以下代码UINT CMoveNoCaptionDlg::OnNcHitTest(CPo原创 2005-01-12 09:14:00 · 1086 阅读 · 0 评论