首页
社区
课程
招聘
[求助]请问下面的代码为什么接收不到WM_CREATE消息
发表于: 2009-11-22 15:42 5145

[求助]请问下面的代码为什么接收不到WM_CREATE消息

2009-11-22 15:42
5145
各位。请问下面的代码为什么接收不到WM_CREATE消息?我用MessageBox测试没反应。。
谢谢!

;Pipe.asm

.386
.model flat,stdcall
option casemap:none

include windows.inc
include user32.inc
include kernel32.inc
includelib user32.lib
includelib kernel32.lib

WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
DlgProc proto :DWORD,:DWORD,:DWORD,:DWORD

.DATA
MyDialog db "MyDialog",0
.DATA?
hInstance HINSTANCE ?
.CONST
IDC_EDIT equ 1

.CODE
start:
invoke GetModuleHandle,NULL
mov hInstance,eax
invoke DialogBoxParam,hInstance,ADDR MyDialog,NULL,ADDR DlgProc,NULL
invoke ExitProcess,eax
DlgProc proc hwnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
        .IF uMsg==WM_CLOSE
                invoke EndDialog,hwnd,NULL
                .ELSEIF uMsg==WM_CREATE
                        invoke MessageBox,NULL,NULL,NULL,MB_OK
        .ELSE
        mov eax,FALSE
        ret
        .ENDIF
        mov eax,TRUE
        ret
DlgProc endp

end start

;Pipe.rc

#include "resource.h"

#define IDC_EDIT 1

MyDialog DIALOG 0,0,300,200
STYLE WS_POPUP | WS_CAPTION |WS_SYSMENU | WS_OVERLAPPEDWINDOW
CAPTION "PipeSample"
BEGIN
EDITTEXT IDC_EDIT,0,0,100,50,ES_MULTILINE
END

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 202
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
DialogBoxParam
对话框的话可以在WM_INITDIALOG这里初始化。
2009-11-23 17:17
0
雪    币: 50
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
多谢zerostudy,DialogBoxParam是不能处理WM_CREATE消息的?

我是想在对话框创建的时候做一些判断,再根据判断结果来动态的创建一个编辑框。

在WM_INITDIALOG消息中调用CreateWindowEx创建编辑框应该是不行的。我试过没效果。
2009-11-23 21:45
0
雪    币: 202
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
是的。模态的就在这里处理WM_INITDIALOG
若是create的就在wm_create
怎么不行呢?
2009-11-23 21:54
0
游客
登录 | 注册 方可回帖
返回
//