
VC/MFC
wangwenwen
这个作者很懒,什么都没留下…
展开
-
VC 各种情况下的窗口句柄的获取
AfxGetMainWndAfxGetMainWnd获取自身窗口句柄HWND hWnd = AfxGetMainWnd()->m_hWnd;GetTopWindow函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄。函数原型:HWND GetTopWindow(HWND hWnd);参数: hW转载 2011-09-18 12:11:47 · 485 阅读 · 0 评论 -
windows驱动入门API
1.驱动采用Unicode字符串typedef struct _STRING { USHORT Length; USHORT MaximumLength; PSTR Buffer;} ANSI_STRING, *PANSI_STRING;UNICODE_STRING str = RTL_CONSTANT_STRING(L“my first string!”);UNICO原创 2012-05-10 00:56:02 · 2381 阅读 · 0 评论 -
VC调用DLL
调用DLL有两种方法:静态调用和动态调用.(一).静态调用其步骤如下:1.把你的youApp.DLL拷到你目标工程(需调用youApp.DLL的工程)的Debug目录下;2.把你的youApp.lib拷到你目标工程(需调用youApp.DLL的工程)目录下;3.把你的youApp.h(包含输出函数的定义)拷到你目标工程(需调用youApp.DLL的工程)目录转载 2013-12-11 14:42:37 · 707 阅读 · 0 评论 -
vc中常用的方法
一、打开CD-ROM mciSendString("Set cdAudio door open wait",NULL,0,NULL); 二、关闭CD_ROM mciSendString("Set cdAudio door closed wait",NULL,0,NULL); 三、关闭计算机 OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据转载 2013-12-11 14:51:49 · 630 阅读 · 0 评论 -
临界区(Critical section)与互斥体(Mutex)的区别
1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用。转载 2011-10-15 16:53:57 · 531 阅读 · 0 评论 -
libxml2
XML--Libxml2使用实例一,使用Libxml2生成xml 1,编辑生成#include #include #include int main(int argc, char **argv){ xmlDocPtr doc = NULL;转载 2011-08-07 17:59:51 · 2134 阅读 · 0 评论 -
C++ Singleton模式
class Singleton {public: static Singleton& Instance() { static Singleton theSingleton; return theSingleton; } /* more (non-static) functions here */private:转载 2012-02-07 23:01:37 · 570 阅读 · 0 评论 -
字符串处理 - ANSI - Unicode - UTF8 转换
2008-11-4: 使用MultiByteToWideChar和WideCharToMultiByte写的4个ANSI Unicode UTF-8 相互转换的函数。2008-11-5: 使用C语言标准库mbstowcs和wcstombs写的w2m和m2w两个函数,分别对应ANSI Unicode 相互转换。2008-11-8: 包装一下 ANSI UTF-8 。 #include转载 2012-05-19 10:51:49 · 709 阅读 · 0 评论 -
PCRE-C语言正则表达式
#define PCRE_STATIC // 静态库编译选项 #include #include #include #define OVECCOUNT 30 /* should be a multiple of 3 */ #define EBUFLEN 128 #define BUFLEN 1024 #pragma comment (转载 2012-05-18 00:16:35 · 2075 阅读 · 0 评论 -
WM_Close,WM_Destory与WM_Quit的区别
当使用者按下系统功能表中的Close按钮,系统送出WM_Close,通常程序的窗口函数不拦截此消息,于是DefWindowProc处理它,DefWindowProc收到WM_Close后调用DestoryWindow把窗口清除,DestroyWindow本身会送出WM_Destory.程序对WM_Destory的标准反应是调用PostQuitMessage,PostQuitMessage送原创 2012-04-04 15:49:56 · 747 阅读 · 0 评论 -
smtp协议 VC实现发送邮件
利用VC2005实现了邮件发送,源程序如下://-------------------------------------------------------SmtpSendEmail.h------------------------------------#pragma once#include #include #include #include#p转载 2012-05-19 13:15:12 · 11154 阅读 · 0 评论 -
VC中TRACE与OutputDebugString
在debug模式下,两者都输出在下面的窗口"debug”窗口;在Release模式下,TRACE不起作用 OutputDebugString可以通过dgbview.exe查看原创 2012-03-26 22:19:19 · 3108 阅读 · 0 评论 -
VC 剪贴板操作
拷贝与粘贴文本下边的源代码演示了如何将文本(包含在CString对象“source”中)拷贝到剪贴板上。CString source; //put your text in sourceif(OpenClipboard()){ HGLOBAL clipbuffer; char * buffer; EmptyC转载 2011-09-14 21:49:08 · 636 阅读 · 0 评论 -
手动添加消息映射
在头文件里 //自定义一个消息 #define WM_MYMSG WM_USER+1//自定义消息的处理函数声明afx_msgvoid OnMyMessage(WPARAM wParam, LPARAM lParam);在.cpp文件里//利用ON_MESSAGE()宏在自定义消息与其处理函数间建立映射关系ON_MESSAGE(WM_MYMSG转载 2011-09-18 11:54:10 · 884 阅读 · 0 评论 -
以程序的方式操纵NTFS的文件权限
以程序的方式操纵NTFS的文件权限发表日期:2004-01-29作者:陈皓[] 出处: Windows NT/2K/XP版本的操作系统都支持NTFS格式的文件系统,这是一个有安全性质的文件系统,你可以通过Windows的资源管理器来设置对每个目录和文件的用户访问权限。这里我就不对NTFS的安全性进行讲述了,我默认你对NTFS的文件目转载 2011-08-24 23:52:01 · 614 阅读 · 0 评论 -
RegisterWindowMessage小记
RegisterWindowMessage函数定义了一个新的窗口消息,该消息在系统范围内是唯一的。通常调用SendMessage或者PostMessage函数时可以使用该函数返回的消息值。函数原型: UINT RegisterWindowMessage( lpString);参数说明: lpString指向一个以NULL结束的字符串,指定待注册的消息。 返回值: 若成转载 2012-04-04 22:50:54 · 1495 阅读 · 0 评论 -
Socket模型详解(转)
两种I/O模式一.选择模型二.异步选择三.事件选择四.重叠I/O模型五.完成端口模型五种I/O模型的比较 两种I/O模式1、两种I/O模式阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字默认为阻塞模式。可以通过多线程技术进行处理。非阻塞模式:执行I/O操作时,Winsock函数会返回并交出控制权。这种模式转载 2012-04-26 21:41:27 · 545 阅读 · 0 评论 -
CString用法整理(转载)
1.CString::IsEmpty BOOL IsEmpty( ) const; 返回值:如果CString 对象的长度为0,则返回非零值;否则返回0。 说明:此成员函数用来测试一个CString 对象是否是空的。 示例: 下面的例子说明了如何使用CString::IsEmpty。 // CString::IsEmpty 示例 CString s; ASSERT(转载 2012-05-03 22:53:53 · 444 阅读 · 0 评论 -
Select I/O模型来实现一个并发处理多个客户端的TCP服务器
#include #include #pragma comment(lib, “ws2_32.lib”) int main() { // 加载win socket WSADATA ws; int ret; ret = WSAStartup(MAKEWORD(2, 2), &ws); if (ret != 0) { printf(”WS转载 2012-02-07 23:17:35 · 4505 阅读 · 2 评论