Windows/VC++
qunbinyue
这个作者很懒,什么都没留下…
展开
-
#pragma data_seg介绍
#pragma data_seg介绍 应用一:单应用程序。 有的时候我们可能想让一个应用程序只启动一次,就像单件模式(singleton)一样,实现的方法可能有多种,这里说说用#pragma data_seg来实现的方法,很是简洁便利。应用程序的入口文件前面加上#pragma data_seg("flag_data")int app_count = 0;#pragma d转载 2006-12-19 13:51:00 · 1007 阅读 · 0 评论 -
将使用 GetProcAddress 的代码从 C 导向 C++ 时收到 C2564 错误或 C2197 错误(转载)
概要loadTOCNode(1, summary);将使用 GetProcAddress() 的代码从 C 导向 C++ 时,MS-DOS 的 C++ 编译器可能会返回以下错误信息:error C2564:formal/actual parameters mismatch in call through pointer to function 32 位编译器返回的错误信息是转载 2007-01-24 16:18:00 · 666 阅读 · 0 评论 -
链接警告:warning LNK4070 :/OUT...
dllD.exp : warning LNK4070: /OUT:dll.dll directive in .EXP differs from output filename "Debug/dllD.dll"; ignoring directive 我在DLL项目中遇到了,因为要对Debug版和Release版分别指定不同的输出文件名。对Debug版,我指定输出文件为dllD.d原创 2007-01-24 10:22:00 · 2359 阅读 · 1 评论 -
Windows的4种主要的同步对象(原)
同步对象Windows共设置了4种主要的同步对象,分别是临界区(Critical Section)、互斥量(Mutex)、信号量(Semaphore)和事件(Event)。MFC封装了它们,分别是类CCriticalSection、CMutex、CSemaphore和CEvent,它们都以CSyncObject为基类。1、临界区(1)创建:CCriticalSection myCritical原创 2007-01-23 14:33:00 · 789 阅读 · 0 评论 -
深入探讨MFC消息循环和消息泵(转载)
首先,应该清楚MFC的消息循环(::GetMessage,::PeekMessage),消息泵(CWinThread::PumpMessage)和MFC的消息在窗口之间的路由是两件不同的事情。在MFC的应用程序中(应用程序类基于CWinThread继承),必须要有一个消息循环,他的作用是从应用程序的消息队列中读取消息,并把它派送出去(::DispatchMessage)。而消息路由是指消息派送出去转载 2006-12-19 21:26:00 · 375 阅读 · 0 评论 -
对话框程序生存期的函数流程探讨(原创)
对话框程序生存期的函数流程探讨例子是一个mfc的对话框,用vc调试器查看了一个程序从生成初始化到接受消息的流程。从产生到结束的基本流程是这样的:KERNEL32->WinMainCRTStartup()->_tWinMain(开始)->AfxWinMain(开始)->AfxGetThread()->AfxWinInit()->InitApplication()->InitInstance()-原创 2006-12-20 17:18:00 · 736 阅读 · 0 评论 -
#pragma 预处理指令详解(zz)
在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为: #pragma para 其中para为参数,下面来转载 2006-12-19 14:00:00 · 369 阅读 · 0 评论 -
用VC++编程控制计算机和光驱
用VC++编程控制计算机和光驱通常有些程序在初次使用使用时,要进行一些象安装特定字体的设置,之后需要重新启动计算机使之生效;而在一些多媒体软件编程中会用到用程序操纵CD_ROM的开与关的情况。为了说明在VC中实现这两项功能的方法,我们创建一个基于对话框、名为Control的工程。对话框的外观如图1所示,其中四个按钮(Button)属性设置见下表, ID转载 2006-12-19 17:49:00 · 353 阅读 · 0 评论 -
pragma:lib在实例之间共享数据
通常,一个进程的地址空间中的数据是私有的,对别的进程而言是不可见的,但是lib在程序的所有实例之间共享数据是毫无问题的 。例如,一个程序proc和一个lib,lib共享两个变量:一个字符数组和一个整数(记录已保存的串的个数)。lib将这两个变量保存在作为共享使用的一个特殊内存段中:#pragma data_seg ("shared")翻译 2006-12-19 16:08:00 · 565 阅读 · 0 评论 -
DOS网络命令解析(转载)
DOS网络命令解析Arp 显示和修改“地址解析协议”(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表。该命令只有在安装了 TCP/IP 协议之后才可用。 arp -a [inet_addr] [-N [if_addr] arp -d inet_addr [if_addr] arp -s inet_addr ether_addr [if_addr]转载 2007-01-24 14:37:00 · 480 阅读 · 0 评论