当前位置:网站首页 / 分类-中医养生知识大全 / 正文

什么原因_VCMFC__基础类(mfc的基类)

什么原因?楼主_china()2003-03-1914:57:52在VC/MFC/基础类提问

无聊的时候,把winasm教程里的东西一改:;asm.asm.386.modelflat,stdcalloptioncasemap:noneinclude\masm32\include\windows.incinclude\masm32\include\user32.incincludelib\masm32\lib\user32.lib;callstofunctionsinuser32.libandkernel32.libinclude\masm32\include\kernel32.incincludelib\masm32\lib\kernel32.libpublicmyMainmyMainproto:DWORD,:DWORD,:DWORD,:DWORD.DATA;initializeddataClassNamedb"SimpleWinClass",0;thenameofourwindowclassAppNamedb"OurFirstWindow",0;thenameofourwindow.DATA?;UninitializeddatahInstanceHINSTANCE?;InstancehandleofourprogramCommandLineLPSTR?.CODE;Herebeginsourcodestart:invokeGetModuleHandle,NULL;gettheinstancehandleofourprogram.;UnderWin32,hmodule==hinstancemovhInstance,eaxmovhInstance,eaxinvokeGetCommandLine;getthecommandline.YoudonthavetocallthisfunctionIF;yourprogramdoesntprocessthecommandline.movCommandLine,eaxinvokemyMain,hInstance,NULL,CommandLine,SW_SHOWDEFAULT;callthemainfunctioninvokeExitProcess,eax;quitourprogram.TheexitcodeisreturnedineaxfromWinMain.myMainprochInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORDLOCALwc:WNDCLASSEX;createlocalvariablesonstackLOCALmsg:MSGLOCALhwnd:HWNDmovwc.cbSize,SIZEOFWNDCLASSEX;fillvaluesinmembersofwcmovwc.style,CS_HREDRAWorCS_VREDRAWmovwc.lpfnWndProc,OFFSETWndProcmovwc.cbClsExtra,NULLmovwc.cbWndExtra,NULLpushhInstancepopwc.hInstancemovwc.hbrBackground,COLOR_WINDOW+1movwc.lpszMenuName,NULLmovwc.lpszClassName,OFFSETClassNameinvokeLoadIcon,NULL,IDI_APPLICATIONmovwc.hIcon,eaxmovwc.hIconSm,eaxinvokeLoadCursor,NULL,IDC_ARROWmovwc.hCursor,eaxinvokeRegisterClassEx,addrwc;registerourwindowclassinvokeCreateWindowEx,NULL,\ADDRClassName,\ADDRAppName,\WS_OVERLAPPEDWINDOW,\CW_USEDEFAULT,\CW_USEDEFAULT,\CW_USEDEFAULT,\CW_USEDEFAULT,\NULL,\NULL,\hInst,\NULLmovhwnd,eaxinvokeShowWindow,hwnd,CmdShow;displayourwindowondesktopinvokeUpdateWindow,hwnd;refreshtheclientarea.WHILETRUE;EntermessageloopinvokeGetMessage,ADDRmsg,NULL,0,0.BREAK.IF(!eax)invokeTranslateMessage,ADDRmsginvokeDispatchMessage,ADDRmsg.ENDWmoveax,msg.wParam;returnexitcodeineaxretmyMainendpWndProcprochWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM.IFuMsg==WM_DESTROY;iftheuserclosesourwindowinvokePostQuitMessage,NULL;quitourapplication.ELSEinvokeDefWindowProc,hWnd,uMsg,wParam,lParam;Defaultmessageprocessingret.ENDIFxoreax,eaxretWndProcendpendstart编译设置为:commandsC:\masm32\bin\ml.exe/nologo/coff/Zf/c/Sa$(InputName).asmoutputs$(InputName).obj结果窗口成myMain的窗口了,不明白,什么原因?@_@问题点数:0、回复次数:2Top1楼_china()回复于2003-03-1915:00:41得分0

注意注意:我说的是asm.asm被插在任意一VC++工程里的。Top2楼_china()回复于2003-03-1915:04:05得分0

结果原工程exe窗口变了。-_-Top相关问题

相关文章

@长沙湖湘杏林教育咨询有限公司 湘ICP备17004542号-2 

免责声明:用户在本网站上发表的全部内容(包括但不仅限于回答/文章/评论/图片引用),文章仅供免费阅读参考。若有侵权,版权个人或单位不想本网发布,可联系用户或本站,我们将立即将其撤除网站地图.技能证书报名