`

这段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;
}
 

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

 

 

给丫的跪了。。。

 

分享到:
评论

相关推荐

    MAPGIS地质制图工具

    本系统是在Windows XP系统和MapGis6.7(B20051118)基础上,以Microsoft VC++ 6.0为编程语言,MapGis 6.7 SDK为开发平台进行开发的地质图件制作软件。系统基于MapGis输入编辑子系统强大的图形编辑能力,添加专业的地质...

    vc++ 开发实例源码包

    代码里用了备份dll的方法,因此在自定义的函数中可以直接调用在内存中备份的dll代码,而不需要再把函数头部改来改去。 IOCP反弹远控客户端模型,外加上线服务端,全部代码注释! 如题。这个是IOCP远程控制软件的...

    基于SIP开发软件电话的一些资源(转自YOUTOO)

    这个目录在VC6的Tool-Options-Directories里设置,(当然,如果你知道这一步,也可以不用拷贝文件,直接在这里把oSIP源码包所在目录加进来就可以了),默认如果装在C盘,目录则为 C...

    查杀磁盘U盘Synaptics(蠕虫病毒)

    4:使用Open XML SDK模块对被感染的Excel文件进行处理,删除病毒VBA代码,恢复成xlsx格式,被感染的xlsm文件以防万一移入回收站而不直接删除 目前已知问题,对某些exe文件会无法恢复,问题发生的原因不明,程序会...

    Windows 系统错误代码简单分析

    0200 代码段应小于 64K。  0201 操作系统无法运行 %1。  0202 操作系统无法运行 %1。  0203 系统找不到输入的环境选项。  0205 在命令子树中的进程没有信号句柄。  0206 文件名或扩展名太长。  ...

    Npclnt.exe WFW 命名管道客户端 [免费版]

    NP 回调应在一个固定的代码段中在 DLL 中。 传递到 DosReadAsyncNmPipe 和 DosWriteAsyncNmPipe 的内存固定和 pagelocked。 更多信息以下文件是可从 Microsoft 下载中心下载: Download Npclnt.exe now ...

    MFC的程序框架剖析

    (1)对于Win32 SDK程序,应用程序的实例是由实例句柄(WinMain函数的hInstance参数)来标识的 (2)对于MFC程序,应用程序的实例是由全局对象(每一个MFC程序有且仅有一个从应用程序类CWinApp派生的类, 如CTestApp,它...

    eclipse 开发c/c++

    代码辅助:这个代码完成功能类似于可在 Borland C++ Builder 或 MS Visual Studio 中找到的功能。 它使用了 代码模板,并且只有助于避免愚蠢的语法错误: 图 4. 有助于使用正确的语言语法的代码辅助功能 代码模板...

    新版Android开发教程.rar

    己的格式,回避掉需要付给 SUN 有关 JAVA 的授权费用。 对手机制造者的影响 � Android 是款开源的移动计算软件平台,组建了 google 主导的拥有众多产业界巨头的产业联盟,有利于 高效开发、降低成本。 � 由于是源...

    RINGSDK包含界面库和图象库。

    这段代码应该放在CPP文件,其中的中文意思上面已经说明过了,命令代码为菜单命令或控件ID,例:CM_OPEN,IDC_BUTTON1 主窗口的消息注册同样可以用MAIN代替而不用写窗口名,即:BEGIN_REGMAINMSG 注:REGCMD和REGMSG...

    C#微软培训资料

    &lt;&lt;page 1&gt;&gt; page begin==================== 目 目目 目 录 录录 录 第一部分 C#语言概述.4 ... 18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 ... 比尔....这一天 微软公司正式推出了其下一代...

    mingw-get-inst-20111118

    关于 MFC,微软基础库类,这个随 VC++ 携带的一个源代码公开的开发包,和其他 Windows 程序开发包是一样的。如果有 VC++ 的授权,你完全可以使用 MFC 的源代码,也就是你使用 GCC 来编译 MFC 程序是完全可以的。 ...

    jdk1.8_sourceCode:这是我JDK 1.8源码分析注释项目,每次分析完了感觉自己悟了,隔一段时间就又忘得一干二净,所以每次做好中文笔记,不断审查

    这是我JDK 1.8源码分析注释项目,每次分析完了感觉自己悟了,隔一段时间就又忘得一干二净,每次做好中文笔记,不断地复习。 我的看原始码心得(以下为mac平台的快捷键,win请把cmd换成ctrl):0。先取消项目的sdk,...

    X-Scan

    需要“Nessus攻击脚本引擎”源代码、X-Scan插件SDK、示例插件源代码或愿意参与脚本翻译工作的朋友,可通过本站“X-Scan”项目链接获取详细资料:“http://www.xfocus.net/projects/X-Scan/index.html”。 &lt;br&gt;三....

    Led 显示 类 数码管 数码 数字

    修改了和完善了某些代码段。如 删除保存背景的 向量某一元素之前先把其中的位图删除; 内存dc用完之后添加删除操作 DeleteDC ; 构析函数中增加了删除 全部位图资源操作 4. 修改了数个变量名使其更统一...

    易语言程序免安装版下载

     第三方支持库,由源代码作者按照静态编译技术文档(参见sdk\static_docs)完成自身改造并提供静态库后,可支持静态编译。外部OCX组件和COM组件,不支持静态编译。  此次重大版本升级不影响以前的源代码(.e)和模块...

    强大的扫描工具x-scan

    需要“Nessus攻击脚本引擎”源代码、X-Scan插件SDK、示例插件源代码或愿意参与脚本翻译工作的朋友 ,可通过本站“X-Scan”项目链接获取详细资料:“http://www.xfocus.net/projects/X- Scan/index.html”。 三. ...

    x-SCAN -V3.3-CN.

    需要“Nessus攻击脚本引擎”源代码、X-Scan插件SDK、示例插件源代码或愿意参与脚本翻译工作的朋友,可通过本站“X-Scan”项目链接获取详细资料:“http://www.xfocus.net/projects/X-Scan/index.html”。 三. 所需...

Global site tag (gtag.js) - Google Analytics