01day-am

Win32 Windows编程
1、Windows编程基础
2、Windows文字的编码
3、窗口程序
4、窗口消息
5、菜单和加速键
6、绘图
7、对话框
8、基本控件
...

一 Windows编程基础
1、Win32应用程序的基本类型
  1.1控制台程序
    不需要完善的Windows窗口,可以使用DOS窗口的方式显示。
  1.2Win32窗口程序
    包含窗口的程序。可以通过窗口与程序进行交互。
  1.3Win32库程序
    提供已有的代码,供其他程序使用。
    动态库:DLL 是在执行的时候可以加载的程序。
    静态库:LIB 是在编译链接时使用的程序。
  1.4对比
    1.4.1程序的入口函数不同
      控制台:main
      Win32窗口程序:WinMain
      动态库DLL:DllMain
      静态库LIB:无

    1.4.2编译链接后存在的形式不同
      控制台和Win32窗口程序:EXE文件
      动态库DLL:DLL文件,无法执行
      静态库LIB:LIB文件,无法执行

    1.4.3执行结果不同
      控制台:使用DOS窗口,自己没有窗口
      Win32窗口程序:会产生自己的窗口,可以将结果输出或者从窗口接受输入。
      动态库DLL:提供可以执行的代码,当EXE等程序执行时,可以使用这些代码。
            执行时,该库必须在指定的路径。
      静态库LIB:自己无法执行,提供给程序在编译链接时使用,将库中的代码嵌入到程序当中。

            执行时,不需要该库存在。

二 Win32窗口程序和编译环境
  2.1开发和编译环境
    VC1.5 - VC6.0(2008) - VC10.0(2010)
      2.1.1编译器 CL.EXE
        将源代码编译目标代码.OBJ文件
      2.1.2链接器 LINK.EXE
        将OBJ文件和库函数链接,生成EXE。
      2.1.3资源编译器 rc.exe
        将资源脚本编译成可以链接的文件(RES)。

#include <Windows.h>

int WINAPI WinMain(HINSTANCE hInstance,
           HINSTANCE hPrevInstance,
           LPSTR pszCmdLine,
           int nShowCmd)
{
    MessageBox(NULL,"Hello World", "FirstWin32", MB_OK);
    return 0;
}

  2.2头文件和库

    2.2.1头文件 Windows.h包含了windows常用的定义等,
      还包含了一些其他的头文件:
      windef.h - 定义了各种的数据类型
      winbase.h - 定义了kernel的相关函数
      wingdi.h - 定义了绘图和文字
      winuser.h - 定义窗口/控件等函数
      winnt.h - 提供Unicode支持
    2.2.2 库
      kernel.lib - 提供进程/线程/内存等等API函数支持
      user32.lib - 包括窗口/界面等等
      gdi32.lib - 提供绘图/文字等

  2.3Hello World程序
    2.3.1入口函数
      int WINAPI WinMain(
        HINSTANCE hInstance, //应用程序的句柄
        HINSTANCE hPrevInstance,//该应用程序的前一个实例句柄
        LPSTR pszCmdLine, //命令行参数
        int nShowCmd) //窗口的显示方式
      L - long
      P - pointer
      C - const
      STR - 字符串
      T - TCHAR

    2.3.2 MessageBox
  2.4编译环境的准备
    在VC的BIN目录下VCVARS32.BAT

  2.5编译
  2.6链接

时间: 2024-10-27 12:58:04

01day-am的相关文章

4/2/2017 Sun.(Week1,01Day) dos命令,jdk&amp;jre&amp;jvm的关系,classpath和path区别

一.学习方法 1.独立思考 2.独立整理.总结知识点 3.整理Exception报错文档 4.莫钻牛角尖 5.敲代码,敲,猛敲,死里敲 一句话:"代码虐我千百遍,我视代码如初恋!!!" 二.常用dos命令 1.start:重新打开一个dos命令窗口 2.exit:退出dos命令窗口 3.cd:显示或进入指定目录 4.cls:清屏   5.dir:遍历并罗列当前目录下的文件和文件夹 6.help:罗列所有的dos命令 (注:①↑或↓:切换历史命令 ②. :当前目录 ③.. :上层目录 ④

Java学习-第一天

今天开始学习Java,看的是[毕向东_Java基础视频教程].因为没有书,将笔记写写在博客上可以备忘和记录学习里程.同时希望通过写博客的形式可以让自己学习Java更有动力. 01day 1.Java跨平台性 Java的跨平台性的主要原因是因为java虚拟机(JVM)的存在. 2.JRE和JDK JRE是Java运行环境,全拼是(Java Runtime Environment),JRE包括Java虚拟机和运行Java程序所需要的核心库.想要运行一个java程序,在计算机上安装JRE就可以了. J

js-显示指定周数的周一和周日,指定月份的第一天和最后一天-----------个人百度 整理的

工作需求,给定一个年份的周期数,需要显示该周的周一和周日以及指定月份的第一天和最后一天 百度整理后显示贴出来,表示个人还不理解为什么,希望有人可以解释一下 贴代码: <script type="text/javascript"> var iweek = function(year, week) { var d = new Date(year, 0, 1);//初始化日期 d 表示输入年份的第一天 while (d.getDay() != 1) { d.setDate(d.g

00003_Win7中Java环境变量的设置和HelloWorld编写

1.环境变量的设置 (1)打开[计算机]→[系统属性]→[高级系统属性]→[环境变量]: (2)新建:JAVA_HOME:jdk安装的路径(如,C:\Tools\Java\jdk1.7.0_51): (3)path:添加 %JAVA_HOME%\bin; : (4)按Alt键,显示工具栏,点击[工具]→[文件夹选项]→[查看]→去掉[隐藏已知文件类型的扩展名]前面的勾,使得文件的后缀名得以显示 : (5)Windows徽标键,以后简称Win键 : (6)同时按住Win+R,输入cmd,回车键打开

python课件-淘宝-目录.txt

卷 TOSHIBA EXT 的文件夹 PATH 列表卷序列号为 AE86-8E8DF:.│ python课件-淘宝-目录.txt│ ├─01python核心编程阶段-linux基础(│ linux_html.rar│ vi_markdown.zip│ ├─02python核心编程阶段-python基础│ ├─代码│ │ 01_Python基础.zip│ │ 02_分支.zip│ │ 03_循环_01_基础.zip│ │ 03_循环_02_完整.zip│ │ 04_函数.zip│ │ 05_高级数

二. python的os模块

一 .os模块 os 模块包括了普遍操作系统的功能 1.name获取操作系统类型 import os print(os.name) # nt 代表是window模块 2.environ 获取操作系统中的环境变量 import os # 获取操作系统中的环境变量 print(os.environ) 3.get获取指定环境变量 print(os.environ.get("PROGRAMFILES")) # C:\Program Files 4.curdir获取当前目录 import os