`

这段Win SDK代码,哥给跪了。。。

    博客分类:
  • C++
阅读更多
#include <windows.h>
#include <stdio.h>

LRESULT CALLBACK WinSunProc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
);

int WINAPI WinMain(
  HINSTANCE hInstance,  // handle to current instance
  HINSTANCE hPrevInstance,  // handle to previous instance
  LPSTR lpCmdLine,      // pointer to command line
  int nCmdShow          // show state of window
)
{
    WNDCLASS wndcls;
	
    wndcls.cbClsExtra		=0;
    wndcls.cbWndExtra		=0;
    wndcls.hbrBackground	= (HBRUSH)GetStockObject(BLACK_BRUSH);
    wndcls.hCursor			= LoadCursor(NULL,IDC_CROSS);
    wndcls.hIcon			= LoadIcon(NULL,IDI_ERROR);
    wndcls.hInstance		= hInstance;
    wndcls.lpfnWndProc		= WinSunProc;
    wndcls.lpszClassName	= TEXT("weixin");
    wndcls.lpszMenuName		= NULL;
    wndcls.style			= CS_HREDRAW|CS_VREDRAW;

    RegisterClass(&wndcls);

    HWND hwnd;
    hwnd=CreateWindow(
		TEXT("weixin"), 
		TEXT("Hello"), 
		WS_OVERLAPPEDWINDOW,
		0,
		0,
		600,
		400,
		NULL,
		NULL,
		hInstance,
		NULL);

    ShowWindow(hwnd,SW_SHOWNORMAL);
    UpdateWindow(hwnd);

    MSG msg;
		// 消息循环
	while(GetMessage( &msg, NULL, 0, 0));
	{
		TranslateMessage( &msg);				// 翻译某些键盘消息
		DispatchMessage( &msg);					// 将消息发送给窗口消息处理程序
	}

    return 0;
}

LRESULT CALLBACK WinSunProc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
)
{
    switch(uMsg)
    {
    case WM_CHAR:
        WCHAR szChar[20];
        wsprintf(szChar,TEXT("char is %d"), wParam);
        MessageBox(hwnd,szChar,TEXT("weixin"),0);
        break;
    //case WM_LBUTTONDOWN:
    //    MessageBox(hwnd,"mouse clicked","???",0);
    //    break;
    case WM_PAINT:
        HDC hdc;
        PAINTSTRUCT ps;
        hdc=BeginPaint(hwnd,&ps);
        TextOut(hdc,0,0,TEXT("window painted"),strlen("window painted"));
		EndPaint(hwnd, &ps);
        break;
    case WM_CLOSE:
        if(IDYES==MessageBox(hwnd,TEXT("Exit"),TEXT("weixin"),MB_YESNO))
        {
            DestroyWindow(hwnd);
        };
        break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }

    return 0;
}
 

 论坛上有人发上来代码,说有问题。。。

 

 

给丫的跪了。。。

 

分享到:
评论

相关推荐

    Win32 SDK版本的象棋游戏源代码

    《Win32 SDK版本的象棋游戏源代码详解》 Windows API,通常称为Win32 API,是微软为Windows操作系统提供的...通过学习和分析这段代码,开发者可以加深对Win32 API的理解,提高在Windows平台上开发图形界面应用的能力。

    利用win32 SDK 显示bmp图像

    在"win32bmpDemo"这个示例项目中,你可能会看到以下关键代码段: - `LoadBitmapData`函数用于读取BMP文件并填充BITMAPINFO结构。 - `CreateAndDisplayBitmap`函数结合了前面提到的步骤,创建位映射并将其显示在窗口...

    SDK Win32 API 计算器 源代码

    在VC++ 6.0环境下,开发者可以直接编译和运行这段代码。 Win32 API 是微软提供的一组接口,允许程序员创建原生的Windows应用程序。它包含了各种函数、结构体和常量,涵盖了窗口管理、图形绘制、输入处理、网络通信...

    Windows SDK API编程例子源代码.zip

    开发者可以通过阅读和分析这段代码,了解API调用的语法和上下文,例如`CreateWindow`用于创建窗口,`ShowWindow`用于显示窗口,` GetMessage`和`DispatchMessage`用于处理消息循环。 在Windows SDK API编程中,有几...

    《白手起家Win32SDK应用程序》第九篇

    这段代码指定了名为`myicon.ico`的图标资源,并为其分配了一个名为`IDI_MYICON`的标识符。 3. **加载图标资源**:在程序中使用图标之前,必须通过调用`LoadIcon`函数将其加载到内存中。例如: ```c HICON hIcon ...

    进度条添加信息提示 C++ & WIN32 SDK

    在描述中提到了工程框架是C++和WIN32 SDK,这意味着我们将不依赖MFC或其他高级库,而是直接使用Windows API来实现这一功能。 首先,让我们了解Windows API中的进度条控件( ProgressBar Control)。它通过`...

    windows环境Java SDK10安装包

    在这段代码中,`list`的类型是由右边的`new ArrayList()`决定的,这样可以使代码更简洁,减少冗余。 其次,Java SDK10引入了模块系统(Module System)的一部分,即Jigsaw项目。虽然完整的模块化系统在Java 9中首次...

    windows SDK10.0.14393.0(vs2015)

    Windows SDK 10.0.14393.0 是针对Windows 10操作系统的一个开发工具包,它是Visual Studio 2015的重要组成部分,主要用于帮助开发者创建、测试和调试针对Windows 10的应用程序。SDK(Software Development Kit)包含...

    海康安防系统SDK及实例源码_win64_java_海康门禁_C#_海康_海康安防系统SDK及实例源码_

    在这个压缩包中,包含的资源适用于Win64平台,且支持Java和C#两种编程语言。 1. **SDK介绍** 海康安防系统SDK(Software Development Kit)是一套用于开发海康安防产品的应用程序的工具集,它提供了丰富的API函数...

    eclipse-SDK-4.0-win32

    在使用Eclipse SDK 4.0-win32时,你需要确保你的Windows系统是32位的,因为这是专门为32位系统设计的。安装过程中,你需要指定Java 1.6的安装路径,因为这个版本的Eclipse不支持更高版本的JDK。如果你的系统中没有...

    Win7下QtSdk-1.2.1环境的搭建

    在Win7环境下,有两条主要的编译途径:一是使用MinGW,这是一个开源的GCC编译器移植,适合于开发跨平台的Qt应用;二是使用Microsoft Visual C++ 2010(MSVC2010),它是微软提供的IDE,更适合于开发仅限Windows的高...

    windows中JAVA对接SAP所需SDK

    7. examples:这个目录包含了示例代码,帮助开发者了解如何使用SAP JCo SDK进行实际的编程。这些示例涵盖了基本的连接设置、函数调用、数据传输等关键操作。 8. javadoc:这是SAP JCo SDK的API文档,提供了所有公开...

    Sap系统开发 NW RFC SDK

    在压缩包子文件的文件名称列表中,“nwrfcsdk”可能是解压后的SDK目录名,这个目录下通常会包含上述的头文件、动态库、示例代码以及其他必要的文档和工具,比如安装指南、API参考手册等。 通过SAP NW RFC SDK,...

    海康威视设备网络SDK_V5.3.2.15(for Windows32)

    开发者需要将SDK提供的动态链接库(DLL)、头文件(.h)和示例代码集成到自己的项目中,通过调用SDK提供的函数接口,实现与海康威视设备的交互。需要注意的是,必须遵循SDK的开发指南,以确保兼容性和稳定性。 4. ...

    指纹采集仪SDK测试演示程序

    SDK(Software Development Kit)则是为开发者提供的软件开发工具包,它包含了必要的库文件、头文件、示例代码和文档,帮助开发者高效地集成指纹识别功能到他们的应用程序中。 "指纹采集仪SDK测试演示程序"是开发者...

    《白手起家Win32SDK应用程序》第八篇

    这段代码的核心在于`GetMessage`函数,它负责从消息队列中获取一个消息并将其存储在`msg`结构中。当接收到特定的消息时(例如`WM_QUIT`),该函数会返回零,从而使得程序能够退出循环。 **退出条件:**程序只有在`...

    视频SDK_Win64 V1.2.4_202109161516_20210916162320

    4. **使用说明.txt**:这是SDK的使用指南,提供了详细的安装步骤、配置方法、API接口介绍以及示例代码,是开发者快速上手的关键文档。 5. **bin**:这个目录通常包含编译好的可执行文件和动态链接库(DLL),开发者...

    Directshow,SDK

    在描述中提到,你使用这个SDK实现了将摄像头的视频流实时传递给MFC(Microsoft Foundation Classes)应用程序的功能。 Directshow的核心是基于过滤器的图形架构,它由一系列相互连接的组件构成,这些组件称为过滤...

Global site tag (gtag.js) - Google Analytics