Windows应用程序要点
一个完整的Windows应用程序除了WinMain函数外,还包含用于处理用户动作和窗口消息的窗口函数。
Windows应用程序具有的一些特性:
消息驱动机制
图形设备接口(GDI)
基于资源的程序设计
动态链接库
1. 消息驱动机制
Windows程序和控制台应用程序之间一个最根本区别,在于控制台应用程序是通过调用系统函数来获得用户输入,
而Windows程序则是通过系统发送的消息来处理用户输入。
2. 图形设备接口(GDI)
Windows提供了一个抽象的接口,称为图形设备接口(Graphical Device Interface,GDI),
使得用户直接利用系统的GDI函数就能方便实现图形和文本的输出,而不必关心与系统相连的外部设备的类型。
3. 基于资源的程序设计
Windows应用程序包含众多图形元素,如光标、菜单、工具栏、位图、对话框等,
每一个这样的资源都用相应的标识符来区分,而且Windows内部也有预定义的资源。
在Windows环境下,每一个资源元素都作为一种可以装入应用程序的资源来存放,
这些资源可以被编辑、修改,也可以被其他应用程序所共享。
4. 动态链接库
动态链接库提供了一些特定结构的函数,能被应用程序在运行过程中装入和连接。
多个程序可以共享同一个动态链接库,动态链接库可以提高程序模块的灵活性。







Windows应用程序要点的更多相关文章
- 关键两步+6个要点,让Windows应用程序享有K8S的绝佳优势
本文来自Rancher Labs 前 言 实际上,没有一个迁移路径能够适用于将所有传统应用程序迁移到云.这些应用程序通常在物理机.虚拟机或本地.虽然一般情况下是重新设计应用程序架构以适用云原生服务, ...
- C#中调用Windows API的要点 .
介绍 API(Application Programming Interface),我想大家不会陌生,它是我们Windows编程的常客,虽然基于.Net平台的C#有了强大的类库,但是,我们还是不能否认 ...
- Delphi开发单机瘦数据库程序要点(后缀cds)
一.概述 Delphi作为Windows下的一种快速开发工具,不仅能开发一般的Windows应用程序,而且还具有强大的数据库应用程序开发功能.Delphi本身提供了对BDE,ODBC,ADO和Inte ...
- 转:Windows消息机制要点
Windows消息机制要点 1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ...
- 【系统篇】从int 3探索Windows应用程序调试原理
探索调试器下断点的原理 在Windows上做开发的程序猿们都知道,x86架构处理器有一条特殊的指令——int 3,也就是机器码0xCC,用于调试所用,当程序执行到int 3的时候会中断到调试器,如果程 ...
- 一个优秀windows C++程序员的知识体系
思考一个优秀windows C++ 程序员该有哪些知识,可最终发现什么知识都不能少, 看下图: 除了上面知识,程序员还要不断学习, 保持对新知识的热情. 转自http://www.cppblog.co ...
- 1-1 Windows应用程序的特点
主要内容:介绍Windows应用程序的特点,并附加了消息和事件的一些区别 //以后该分类中字体均采用 隶书 4(14pt) 1. 面向对象 <1>针对Windows应用本身,如记事本界面, ...
- Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行
遇到这个问题是用辅助工具(WinNTSetup3.exe)进行的安装,重启后就就遇到“Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行” 解决:在WIN PE 下挂载安装光 ...
- 字符模型和Windows等价程序
二者很明显的区别,dos和gui 字符模式模型 #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]){ print ...
随机推荐
- 运行指定路径下的exe
public void StartProcess(string name) { string exeFileName = "DataControl.exe"; string sta ...
- 从Map、JSONObject取不存在键值对时的异常情况
1.在Map中取不存在的键值对时不会报异常,只会返回null. @Test public void testMap() { Map<String, Object> map = new Ha ...
- JavaScript(7)——事件2.0
事件 [事件类型] 不同的事件类型具有不同的信息. [UI事件] 指的是那些不一定与用户操作有关的事件.当用户与页面上的元素交互时触发. load事件:当页面完全加载后,就会 触发window 上面的 ...
- 使用NSURLProtocol实现UIWebView的离线缓存
http://blog.csdn.net/youcanping2008/article/details/9240487
- java代码如何读取properties文件
我们在开发工程中,有时候需要在Java代码中定义一些在部署生产环境时容易改变的变量,还需要我们单独放在一个外部属性文件中,方便我们将来修改.这里列出了两种比较方便的方式. 一.在Spring配置文件中 ...
- find文件后cp、rm
复制: find <src-path> -name 'some names' -exec cp {} <dest-path> \; find <src-path> ...
- hdu_5791_Two(DP)
题目链接:hdu_5791_Two 题意: 给你两串数列,问你相同的子序列有多少个,要注意,可以重复,比如1 和1 1 1 ,相同的子序列为3个 题解: 就和求最长公共子序列差不多,只不过要全部加起来 ...
- vb6学习心路
1.不能加载 'MSCOMCTL.OCX'--继续加载工程吗解决办法:新建一个VB工程,然后按CTRL + T,选中 “Microsoft Windows Common Controls 6.0” 然 ...
- SQL 优化案例 1
create or replace procedure SP_GET_NEWEST_CAPTCHA( v_ACCOUNT_ID in VARCHAR2, --接收短信的手机号 v_Tail_num i ...
- 一个不错的PHP文件页面缓存类
在php中缓存分类数据库缓存,文件缓存和内存缓存,下面我来给各位同学详细介绍PHP文件缓存类实现代码,有需要了解的朋友可参考. 页面缓存类 <?php /* * 缓存类 cac ...