Windows&MFC&stl&wtl
此间的年少
三人行必有我师不积跬步无以致千里不积小流无以成江海成临渊羡鱼不若退而结网
展开
-
MFC 中的Winmain
设计一个简单完整MFC程序,产生一个窗口。当然这不能让AppWizard自动生成。我们可以在Win32 Application工程下面这样写:#include class MyApp : public CWinApp{public:BOOL InitInstance() //②程序入点{CFrameWnd *Frame=n转载 2013-08-07 19:01:26 · 1309 阅读 · 0 评论 -
static控件
静态控件主要用:对用户界面起说明和装饰作用。 静态控件根据其风格属性可派生出:静态图片控件、静态文本控件和静态自绘控件。 静态文本控件用来显示文本。 静态图片控件可以用来显示位图、图标、方框和图元文件,在图片控件中显示图片的好处是不必操心图片的重绘问题。 静态控件不能接收用户的编辑输入。 静态控件可以用CreateWindow或CreateWindowEx函数来创建。转载 2013-08-20 22:21:23 · 1131 阅读 · 0 评论 -
MFC窗口程序显示命令行输出窗口的方法
经常看到一些程序在运行的时候有一个WINDOWS控制台,感觉非常COOL。实际上有的时候帮助你监视系统运行是很方便的,那么怎么样创建一个控制台呢?实际上WINDOWS为你提供了一系列的API来完成这个功能,例如:ReadConsole,WriteConsole等,具体参见MSDN。下面我们用一段代码来说明如何创建Console.1。首先调用AllocConsole函数来为你进程创建一个转载 2013-08-07 14:46:41 · 1534 阅读 · 0 评论 -
Directshow初探
DirectX OpenCV Opengl ffmpeg都是视频开发的框架,框架是为完成特坚功能而设计的一系列的类库。DirectX9.0b SDK下载地址及安装说明DirectX9.0c 版本的SDK 包大多是升级包,里面并未附带DirectShow 部分,故不能单独使用。 这里只能将详细的说明给大家传一下,大家如果要文件的话可以联系我哦,联系方式要么给我留原创 2013-08-13 15:04:34 · 859 阅读 · 0 评论 -
窗口应用中或MFC中输出console
AllocConsole(); stdout = freopen("CONOUT$", "w" stdout); printf("hello, world.\n");原创 2013-08-01 22:14:48 · 1392 阅读 · 0 评论 -
MFC.UI线程问题
缘起这是一篇找喷的文章。 由于一些历史原因和人际渊源,周围同事谈论一些技术话题的时候,经常使用“UI线程”一词。虽然我从来没有看到其确切定义,但心里对其含义可能略懂,因此一直装作心知肚明的样子(以免被嘲讽)。 日前,一同事发了封邮件大谈“UI线程”的概念,分享到大部门。大部门里除了我们一个Windows客户端部门,其他都是做网站的Java开发。因此,在他们面前谈论一些我们并不成转载 2013-07-24 17:29:16 · 1295 阅读 · 0 评论 -
MFC链表类解读
围绕微软提供的collect示例代码进行说明。可在X:/Microsoft Visual Studio 9.0/Samples/2052/C++/MFC/advanced/collect下找到该程序。 首先说说collect的框架。collect是一个SDI风格的窗口程序,“Example”菜单提供了9种不同的集合类示例,点击某一个集合类,可以切换到该集合类的视图窗口下,其中每个集合类都包转载 2015-09-21 10:59:29 · 2442 阅读 · 0 评论 -
MFC中异形分层窗口设计
关于异形窗口,网上有很多关于这方面的教程,杂七杂八,有很多的问题,比如异形窗口控件不显示等等,关于复杂异形窗口,可以通过分层窗口来解决。下面说一下设计思路。方法/步骤1首先,准备两个窗口,窗口A和窗口B,窗口A作为显示窗口,也就是异形窗口,而窗口B作为逻辑窗口,就是你要处理使用的窗口,即主窗口,然后让这两个窗口重叠在一块,也可以说转载 2015-05-11 08:40:30 · 2055 阅读 · 0 评论 -
MFC CInternetSession
VC:#include "afxinet.h"#include CString url ("http://localhost/web?cmd=start&sn=123456&ai=abcd"); CInternetSession session; CHttpFile* pfile = (CHttpFile*)session.OpenURL(url,1,INTERNET_转载 2016-01-11 23:04:33 · 1468 阅读 · 0 评论 -
DOS和BIOS系统调用
DOS(disk operating system)DOS为层次型模块化结构的操作系统是由三个部分的程序文件和一个BOOT 引导程序构成的三个程序文件分别是::1.IO.SYS 输入输出管理系统输入输出系统包括固化在ROM中的基本输入输出系统(BIOS)和系统盘上的BIOS接口模块IBM原创 2014-03-27 22:50:29 · 1440 阅读 · 0 评论 -
window窗口和窗口所有者
一、概念和区别 在windows系统中,每个窗口对象都对应有一个数据结构,形成一个list链表。系统的窗口管理器通过这个list来获取窗口信息和管理每个窗口。这个数据结构中有四个数据用来构建list,即child、sibling、parent、owner四个域。 所以我们可以看到,窗口之间的关系有两种:owner-owned 关系和 parent-child关系。前者称之为原创 2015-01-03 13:42:17 · 1041 阅读 · 0 评论 -
Windows让程序只运行一次
一、通过创建互斥量来判断:WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int){ try { Application->Initialize(); HANDLE hMutex = CreateMutex(NULL, TRUE, "MyAppMutex"); if(NULL转载 2015-01-03 13:19:49 · 987 阅读 · 0 评论 -
VC真彩工具栏制作浅析
1、首先,提供一些最好的图标,大家可以省去自己绘画图标的功夫,可以从繁琐的绘图工作中解脱出来。ToYcon在线网页转换PNG-ICONhttp://converticon.com/一个非常好的ICO图标查找网站http://www.iconfinder.nethttp://www.iconlet.com/2 、其次,大家可以借鉴一些软件的BM原创 2013-11-02 20:39:38 · 910 阅读 · 0 评论 -
MFC CToolBar使用总结
所谓工具条就是具有位图和分隔符组成的一组命令按钮,位图按钮部分可以是下推按钮、检查盒按钮、无线按 钮等。工具条对象类派生于主窗口架框类CframeWnd或CMDIFrameWnd,其类控制CToolBar::GetToolBarCtrl是 MFC类库中封装的一个成员函数,允许使用类库中提供的一般控制和附加功能,CtoolBar类控制成员控制提供了Windows一般控制的所有功能,然 而,通过调用转载 2015-01-15 12:54:53 · 3907 阅读 · 0 评论 -
菜单重绘
//首次查找msdn,CMenu的OverridablesDrawItemCalled by the framework when a visual aspect of an owner-drawn menu changes.MeasureItemCalled by the framework to determine menu dimensions w转载 2014-10-23 14:09:39 · 1864 阅读 · 0 评论 -
CWND子窗口重绘
在写完MFC之CButton空间重绘(GDI篇)后我以为会很快就能把GDI+篇弄出来。结果出了点意外,效果总是有不满意的地方。弄了好几天,才弄出一个满意的效果来。同GDI篇一样,实现了3种类型的按钮,以满足公司项目的需求,分别是下面三种类型:1.普通型按钮 2.菜单型按钮 3.静态按钮。(不规则,透明等效果完美的实现)下面贴代码:公共头文件(public.h):[cpp]转载 2014-10-23 14:08:27 · 1477 阅读 · 0 评论 -
MFC线程
多线程处理:创建用户界面线程用户界面线程通常用于处理用户输入和响应用户事件,这些行为独立于执行该应用程序其他部分的线程。已经创建并启动主应用程序线程(在 CWinApp 导出的类中提供)。本文描述创建其他用户界面线程所需的步骤。创建用户界面线程时,必须首先从 CWinThread 派生类。必须使用 DECLARE_DYNCREATE 和 IMPLEMENT_DYNCREATE转载 2013-07-24 17:26:10 · 669 阅读 · 0 评论 -
Visual C++6.0开发灰度位图处理(MFC)
图像处理技术已经渗透到人类生活的各个领域并得到越来越多的应用,图像处理所涉及的图像格式有很多种,如TIF、JEMP、BMP等等,工程应用中经常要处理256级的灰度BMP图像,如通过黑白采集卡采集得到的图像。BMP灰度图像作为Windows环境下主要的图像格式之一,以其格式简单,适应性强而倍受欢迎。在进行图像处理时,操作图像中的像素值就要得到图像阵列;经过处理后的图像的像素值存储起来;显示图像时要正转载 2013-09-02 17:35:12 · 1846 阅读 · 0 评论 -
DirectX9.0C Aug.2007
DirectX 9.0C SDK 的第一个版本是DirectX SDK Summer 2004也是整合有DirectShow SDK 的最后一个 版本,这之后面向DirectX 9.0C用C++开发应用程序没有发生太大变化,以后的版本主要是针对MDX做的改动,如果在VS2003下用C++开 发DirectShow应用程序使 用这个版本最合适.另外Windows XP SP2 中包含的DirectX原创 2013-07-16 13:03:49 · 1279 阅读 · 0 评论 -
MFC打印机制
总结了一下其中的一些用法:1:用CPrintDialog 可以呼出窗口让用户选择打印机或者采用默认的打印机直接打印。 StartPage…..EndPage 完成一页文档的打印。 如需改变DC设置,需要调用ReSetDC() 多次调用这两个函数,可以实现打印多页2:TextOut坐标的确定。 TextOut中的坐标是DC中的逻辑坐标。 和实际转载 2014-10-31 15:07:16 · 2096 阅读 · 0 评论 -
CString转int _ttoi() _tcstoul() Format ASSERT() Format的用法
CString 型转化成 int 型 把 CString 类型的数据转化成整数类型最简单的方法就是使用标准的字符串到整数转换例程。 虽然通常你怀疑使用_atoi()函数是一个好的选择,它也很少会是一个正确的选择。如果你准备使用 Unicode 字符,你应该用_ttoi(),它在 ANSI 编码系统中被编译成_atoi(),而在 Unicode 编码系统中编译成_wtoi()。你转载 2013-08-04 18:40:15 · 1082 阅读 · 0 评论 -
CButtonST类简介
CButtonST是功能非常全的CButton派生类,利用它你可以实现各种按钮的效果,它包括的特征如下:1、 CButton所有的功能2、 文字和图标按钮3、 16×16,32×32,48×48,16或256色图标的支持4、 支持透明按钮5、 支持标准的或新的平面按钮风格6、 运行时刻按钮风格的变换7、转载 2015-09-27 22:57:52 · 627 阅读 · 0 评论 -
MFC消息映射
作为C++程序员,我们总是希望自己程序的所有代码都是自己写出来的,如果使用了其他的一些库,也总是千方百计想弄清楚其中的类和函数的原理,否则就会感觉不踏实。所以,我们对于在进行MFC视窗程序设计时经常要用到的消息机制也不满足于会使用,而是希望能理解个中道理。本文就为大家剖析MFC消息映射和命令传递的原理。 理解MFC消息机制的必要性 说到消息,在MFC中,“最转载 2015-04-08 10:54:58 · 1326 阅读 · 0 评论 -
MFC注册窗口
1.一个窗口的标题就是主窗口显示时左上角的窗口名,用GetWindowText获取;一个窗口的类名是注册这个窗口时的窗口类名,用GetClassName获取。2.MFC在preCreateWindow中注册窗口类,根据窗口类型不同注册6个窗口类中的一个,每个窗口类名固定,如: CWnd注册一个名为_AfxWnd的类,CFrameWnd注册一个_afxWndFrameOrView,CM原创 2015-03-26 17:53:10 · 1865 阅读 · 0 评论 -
几种MFC对话框的隐藏方法
修改CXXAPP中的InitInstance函数,将原来的模态对话框改为非模态对话框,及修改[cpp] view plaincopyINT_PTR nResponse = dlg.DoModal(); 为[cpp] view plaincopydlg.Cr转载 2015-03-04 15:28:20 · 857 阅读 · 0 评论 -
wince 5.0 Platform Builder 5.0 下载地址
学习嵌入式开发的朋友都知道,嵌入式开发主要用到2个软件一个是Platform Builder for Windows CE 5.0一个是VS.NET2005,其中VS.NET2005网上很容易下载,现在提供一个Platform Builder for Windows CE 5.0下载地方,而且富有破解方法。安装时注意:全部下载完成后,运行时,运行第二个即下面标有红星的安装,不要直接运行第一转载 2013-12-21 15:22:34 · 3240 阅读 · 0 评论 -
Windows CE5.0 2012年补丁包
Windows CE5.0 2012年补丁包WinCEPB50-121231-Product-Update-Rollup-Armv4I.msi下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=36504从Windows CE 5.0_Product_Update_Rollup_2012.htm中可以看到包含之前所有的补转载 2013-12-21 19:00:38 · 1825 阅读 · 0 评论 -
NT.dll
打开NTDLL.dll,惊奇的发现原来CRT的许多基本函数居然都是在这里实现的!甚至包括qsort,ceil这样的函数,还有臭名昭著的 strcpy(严格来讲,这只能怪使用者不当心)。堆的释放,进城管理,似乎都是在这。于是,我决定,仔细察看以下它,这1410个函数是做什么的. 用户模式的代码在调用系统内核函数的时候,首先把一个叫做system call number的数放在EAX中,把参数放转载 2013-11-29 15:19:42 · 1749 阅读 · 0 评论 -
windows体系结构
Windwos 体系结构:--------------------------------------用户模式(ring3)系统进程、服务进程、应用程序、环境子系统(向应用程序提供环境和应用程序编程接口 Appplication Programming Interface-API。Windows 2000/XP 支持三种环境子系统:Win32、POSIX 和 OS/2,其中最重要的转载 2013-11-28 18:39:46 · 2193 阅读 · 0 评论 -
Win7下添加右键获取管理员权限
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\runas]@="获取管理员权限""NoWorkingDirectory"=""[HKEY_CLASSES_ROOT\*\shell\runas\command]@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /g原创 2013-08-11 16:32:26 · 942 阅读 · 0 评论 -
win7下出现UnknowCopnent报告解决
命令行 中执行:secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose原创 2013-08-11 16:30:39 · 906 阅读 · 0 评论 -
为什么要注册窗口
从msdn的atom table说明中我们发现这样一段说明。The system uses atom tables that are not directly accessible to applications. However, the application uses these atomswhen calling a variety of functions. For exampl原创 2013-07-30 20:31:44 · 1234 阅读 · 0 评论 -
探讨Windows编程中句柄的本质
一、书上定义: >(Microsoft Press,by Richard Wilton) 在Windows环境中,句柄是用来标识项目的,这些项目包括:模块(module)、任务(task)、实例 (instance)、文件(file)、内存块(block of memory)、菜单(menu)、控制(control)、字体(font)、资源(resource),包括图标(ic转载 2013-08-06 16:41:48 · 1232 阅读 · 0 评论 -
Windows句柄
HMODULE表示模块句柄Handle 是代表系统的内核对象,如文件句柄,线程句柄,进程句柄。HMODULE 是代表应用程序载入的模块,win32系统下通常是被载入模块的线性地址。HINSTANCE 在win32下与HMODULE是相同的东西,在Win32下还存在主要是因为win16 程序使用HINSTANCE来区别task。 HWND 是窗口句柄 在头文件中HM原创 2013-08-06 15:00:54 · 1566 阅读 · 0 评论 -
UI线程和Windows消息队列
细说UI线程和Windows消息队列注: 由于本人对Windows底层机理了解不深,本文如有错误,敬请指正。 金旭亮 ================================================ 在Windows应用程序中,窗体是由一种称为“UI线程(User转载 2013-07-24 17:37:08 · 735 阅读 · 0 评论 -
InitializeCriticalSectionAndSpinCount : 找不到标识符
window版本过高导致的在stdafx.h中添加#if !defined(AFX_STDAFX_H__BAF75E52_BCEE_49E1_9FB2_653D8280FD13__INCLUDED_)#define AFX_STDAFX_H__BAF75E52_BCEE_49E1_9FB2_653D8280FD13__INCLUDED_#ifndef WINVER // All原创 2013-07-18 18:37:03 · 2503 阅读 · 1 评论 -
微软产品
软件▪ MS-DOS ▪ Windows ▪ Internet Explorer ▪ Office ▪ Visual Studio ▪ Security Essentials ▪ Expression ▪ Dynamics ▪ Money ▪ Encarta ▪原创 2013-07-16 13:20:35 · 718 阅读 · 0 评论 -
微软产品XNA开发工具
近日,微软确认将不再继续为游戏开发者提供工具包XNA的任何新构架,但微软并不会放弃DirectX的更新工作。据外媒报道,微软XNA Game Studio表示他们还将继续为Xbox 360,Windows及Windows Phone提供XNA工具包的支持,但将不会为其提供任何更新版的工具包XNA。 微软强调,DirectX是现在Windows、Xbox和Windows Phone平台原创 2013-07-16 13:17:50 · 1264 阅读 · 0 评论 -
windows api架构
每一个操作系统都要通过某种方式为开放人员提供一组服务---也就是Application Programming Interface(应用程序编程接口.API)..开发人员就通过API来编写应用程序.例如.DOS是用著名的INT 21h提供此接口的.(之前讲到的软件中断.具体功能需要查表.CPU指令).微软的操作系统也多时如此.当然API有几种实现..掌上电脑的(windowsCE)..转载 2013-11-29 15:28:27 · 1122 阅读 · 0 评论 -
WindowMobile 史末
言归正传,先来看看微软在操作系统方面的产品,桌面操作系统大体的历程: MS-DOS Windows 1.0 Windows 2.0 Windows 3.0 Windows NT 3.1 Windows 3.2 Windows 95 Windows NT 4.0(发布同一年——1996年,11月份发布Windows CE 1.0) Windows 98 Win转载 2013-12-07 21:10:21 · 858 阅读 · 0 评论