Windows程序设计读书笔记-开始

开始学习Windows程序设计,为的在兵荒马乱的金融危机中沉淀些东西,很功利的心理,无他

 

三个先决条件:

(1)熟悉Windows98,还行,最起码从界面上,不陌生

(2)有C语言简单的基础,这个挺汗,学的少,要补齐,学习的过程中补齐,要熟悉C语言,特别是结构和指针

(3)安装了VC++6.0,装好了,不过MSDN不能用,重新装了个MSDN,从VC++调用不起来,应该没大影响吧

 

Windows简史(略过,不感兴趣)

 

Windows运作机制的核心是一个称作「动态链接」的概念。Windows的主要部分仅通过三个动态链接库实作。这代表了Windows的三个主要子系统,它们被称作

Kernel:16位的KRNL386.EXE和32位的KERNEL32.DLL

User:16位的USER.EXE和32位的USER32.DLL

GDI:16位的GDI.EXE和32位的GDI32.DLL

 

API和内存模式

理解个概念,对现在编程,没啥帮助

 

语言选项

踏踏实实的先从c++用起,学起

 

程序开发环境

说了这么多就是说MSDN是个好东西

 

API

同上,MSDN是个好东西

 

第一个Windows程序,这个是最感兴趣的,虽然挺晦涩(现在看起来),但是看了后面的解释,能够背下来每个部分都是什么

 


#include <windows.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,

                   PSTR szCmdLine, int iCmdShow)

{

MessageBox (NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0);

return 0 ;

}

 

#include <windows.h> 是表头文件,一般都要用到它

 

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)

这个比较复杂

WINAPI:标识符指定了一个呼叫约定,包括如何生产机械码以在堆栈中放置函数呼叫的参数。许多Windows函数呼叫声明为WINAPI。

WinMain:函数声明为返回一个int值

HINSTANCE hInstance:被称作「执行实体句柄」。在Windows程序设计中,句柄仅是一个应用程序用来识别某些东西的数字。在这种情况下,该句柄唯一地标识该程序,还需要它在其它Windows函数呼叫中作为参数。

hPrevInstance:在Windows的早期版本中有点用,在32位Windows版本中,该概念已被抛弃。传给WinMain的第二个参数总是NULL(定义为0)。

PSTR szCmdLine:用于执行程序的命令列,某些Windows应用程序利用它在程序启动时将文件加载内存。

int iCmdShow:指出程序最初显示的方式,可以是正常的或者是最大化地充满整个画面,或者是最小化显示在工作列中(窗口和消息章节有详细介绍)

 

MessageBox (NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0 这个用于显示短消息,就是个对话框

NULL是个窗口句柄,在窗口和消息章节有详细介绍

TEXT ("Hello, Windows 98!")是消息中显示的内容

TEXT ("HelloMsg")是消息的标题栏现实的内容

0主要是显示窗口上面的图案和有几个button会被显示出来,通常是十六进制的后三位相或可以组合出不同的组合

(1)倒数第一位确定有几个按钮

(2)倒数第二位确定消息框中的图示

(3)倒数第三位没太看明白

 

最后是如何编译和运行程序

简单点说就是写完代码之后F7->Ctrl+F5就搞定

 

个人问题

(1)现在我们所使用的应该都是32位的Windows版本,那么WinMain的第二位是不是基本上都是NULL

(2)Messagebox中的倒数第三位的用法,标准格式都需要写成0x00000XXXL么

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值