![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码总结
liziwen
这个作者很懒,什么都没留下…
展开
-
Win API 实现窗口代码--经典
// 5fskdl.cpp : Defines the entry point for the application.//#include "window.h"HINSTANCE hinstance;HINSTANCE ghInst;char* szAppName="SimleAPI";//注册窗口类int CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);原创 2007-08-29 22:53:00 · 423 阅读 · 0 评论 -
获取字体精确大小
CString str=_T("TEST");//set the fontCFont *font=new CFont();LOGFONT lf;ZeroMemory(&lf,sizeof(lf));lf.lfHeight = 0;lf.lfQuality =2;lf.lfWeight =1000;lf.lfItalic = 0;lf.lfWidth =10;strcpy(lf.lfFaceName原创 2007-09-23 21:13:00 · 506 阅读 · 0 评论 -
位运算实现按钮变灰
void CCashVoucherView::OnCbnSelchangeComboMarket(){ // TODO: Add your control notification handler code here CString strMarket; int nIndex=m_cbMarket.GetCurSel(); m_cbMarket.GetLBText(nIndex,strMarket原创 2007-09-23 21:09:00 · 281 阅读 · 0 评论 -
Mutex问题
互斥量(Mutex)这两个互斥对象Mutex也不容忽视,这里应该是处理线程的同步--OpenMutex->CreateMutex->Lock->Unlock.......->ReleaseMutex(s_hmutexParameter)补充:1. Mutex是一个令牌,当一个线程拿到这个令牌时运行,另外想拿到令牌的线程就必须等待,直到拿到令牌的线程释放令牌。没有所有权的线程是无法释放令牌的。2原创 2007-09-23 21:15:00 · 1891 阅读 · 0 评论 -
TRACE宏的使用
在Debug版本中输出信息#ifdef _DEBUG#define DxTRACE TRACE#endif#ifdef _DEBUG //changjieleeDxTRACE(_T("/n%s/n"),(PBYTE)lpBuf);#endif MSDN// example for TRACEint i = 1;char sz[] = "one";TRACE( "Integer =原创 2007-09-23 21:12:00 · 266 阅读 · 0 评论 -
线程的创建
创建线程,对应线程的开始地址RunProcessInPacketProcHANDLE hThreadID = (HANDLE)_beginthreadex(NULL, 0, RunProcessInPacketProc, &m_tdProcessInPacket,/*注意这个参数,解释:arglist Argument list to be passed to new t原创 2007-09-23 21:07:00 · 322 阅读 · 0 评论 -
Mutex的使用
定义: HANDLE s_hmutexSocket;对 CreateMutex 等的返回值进行必要的判断调用OpenMutex时,系统将扫描所有现存的互斥量,如果找到lpName指定的互斥量。就返回给调用线程,如果找不到就返回NULL// Create the mutexCString strMutexName;strMutexName.Format(_T("OctO原创 2007-09-23 21:16:00 · 709 阅读 · 0 评论 -
指针在进程之间的作用域
在Windows中一个正在被执行的程序被称作一个进程。每一个应用程序EXE都将以一个单独的进程运行,每一个进程都有一个4GB的地址空间。一个进程中的一个地址同另外一进程中的某个地址是不同的。由于指针是在不同的地址空间中起作用的,因此不能将一个指针从一个进程传到另外一个进程。为理解这一点,可以类比一下街道地址。例如,对于地址369 Peachtree St.,它可能位于亚特兰大的一个商业大街上,原创 2007-08-29 23:23:00 · 326 阅读 · 0 评论 -
动态连接库
动态连接库学习笔记规则DLL(不能导出整个类,但可以使用MFC中的类)的导出与导入(显式—利用.def文件)导出:1:选择regular Dll using MFC Dll2:在(项目名).cpp后填加函数的定义.在头文件处添加函数的声明.3:在.def文件中的EXPORTS后填加函数名比如://MyDll.cppVoid DisplayAppName(){…}//原创 2007-08-27 23:45:00 · 657 阅读 · 0 评论 -
Bmp学习笔记_05_12_16.doc
/*/////////////////////////////////////// // 1:Load bitmap到内存中,并用句柄唯一标示. // 2:用该句柄和一个CBitmap对象乡关联. // 3:正常使用CBitmap对象.最多的操作是使用BitBlt(); // 4:用完后要释放CBitmap对象和原创 2007-08-29 22:52:00 · 458 阅读 · 0 评论 -
多任务编程_05_12_24.doc
多任务编程—记得P,V原语不?进程调用CreateProcess() API函数第一个参数:程序名或一个完整的路径名.第二个参数:命令行参数.如果第一个参数为NULL,第二个参数的第一个标记将被作为程序名,通常也是这么做的.线程基础知识:最终线程的有先级为0~21.工作线程和用户线程工作线程:完成如计算,后台打印或等待一个事件的发生,使用户不被强迫等待.启动原创 2007-08-29 23:05:00 · 1718 阅读 · 0 评论 -
Enter后焦点移到下一个Tab中
1、先调节好Tab顺序2、BOOL CClientContactView::PreTranslateMessage(MSG* pMsg){ // TODO: Add your specialized code here and/or call the base class if (WM_KEYFIRST message && pMsg->message { if(pMsg->wParam==V原创 2007-09-23 21:19:00 · 502 阅读 · 0 评论