初步认识win32基础框架1

本文主要介绍了Win32的基础框架,特别是使用VS2013开发环境下的C/C++编程。文章涵盖了Windows四大程序模块:控制台程序、窗口程序、动态库和静态库,并详细讲解了Win32 API、字符集概念、编码方式以及入口函数_tWinMain()。同时,还讨论了Windows函数的特点、窗口创建流程和常用函数,如messagebox和音乐媒体处理。
摘要由CSDN通过智能技术生成

      这是我第一次写博客,目的也很简单,就是希望自己能对学习的知识有个整理,以后能方便查阅,同时也希望这些内容能帮助到一些人。

今天主要介绍win32的基础框架, 我使用的开发环境是VS2013.使用的语言是C/C++

 

windows四大程序模块:

 1.1控制台程序

      没有自己的窗口,dos-显示或者运行程序,入口mian()

 1.2窗口程序

      有自己的窗口,win32,mfc,qt,入口WinMain

 1.3动态库

      后缀dll,不可以单独运行,直接注入到可执行程序中

      入口函数DllMain,不是必须.

 1.4静态库

      lib为后缀的程序,只用来存储代码和数据.

      执行程序直接赋值代码,没有入口函数

win32 概述:  

          Win32 API作为 Microsoft 32位平台(包括:Windows 9x,Windows NT3.1/4.0/5.0,WindowsCE)的应用程序编程接口,它是构筑所有32位Windows平台的基石,所有在Windows平台上运行的应用程序都可以调用这些函数。

 

win32基础框架 :

(使用vs2013自动生成的win32项目,不会的,可以参考https://jingyan.baidu.com/article/ea24bc398573b3da62b33104.html)如下:(只展示.cpp部分)

// test.cpp : 定义应用程序的入口点。
//

#include "stdafx.h"
#include "test.h"

#define MAX_LOADSTRING 100

// 全局变量: 
HINSTANCE hInst;								// 当前实例
TCHAR szTitle[MAX_LOADSTRING];					// 标题栏文本
TCHAR szWindowClass[MAX_LOADSTRING];			// 主窗口类名

// 此代码模块中包含的函数的前向声明: 
ATOM				MyRegisterClass(HINSTANCE hInstance);
BOOL				InitInstance(HINSTANCE, int);
LRESULT CALLBACK	WndProc(HWND, UINT, WPARAM, LPARAM);
INT_PTR CALLBACK	About(HWND, UINT, WPARAM, LPARAM);

int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
                     _In_opt_ HINSTANCE hPrevInstance,
                     _In_ LPTSTR    lpCmdLine,
                     _In_ int       nCmdShow)
{
	UNREFERENCED_PARAMETER(hPrevInstance);
	UNREFERENCED_PARAMETER(lpCmdLine);

 	// TODO:  在此放置代码。
	MSG msg;
	HACCEL hAccelTable;

	// 初始化全局字符串
	LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
	LoadString(hInstance, IDC_TEST, szWindowClass, MAX_LOADSTRING);
	MyRegisterClass(hInstance);

	// 执行应用程序初始化: 
	if (!InitInstance (hInstance, nCmdShow))
	{
		return FALSE;
	}

	hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_TEST));

	// 主消息循环: 
	while (GetMessage(&msg, NULL, 0, 0))
	{
		if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
		{
			TranslateMessa
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值