学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

关于在屏幕桌面上(非窗口中)画图的一个问题!!!

关于在屏幕桌面上(非窗口中)画图的一个问题!!!

.386
        .model flat,stdcall
        option casemap:none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include        windows.inc
include        gdi32.inc
includelib    gdi32.lib
include        user32.inc
includelib    user32.lib
include        kernel32.inc
includelib    kernel32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        .data?
hInstance    dd        ?
hWinMain    dd        ?
@bb dd ?
@aa  POINT <>
        .code
start:
         invoke  GetDC,HWND_DESKTOP;这个是桌面的dc---HWND_DESKTOP
         mov @bb,eax
         invoke  GetCursorPos,addr @aa
         mov eax,@aa.x
         mov ebx,@aa.y
         mov ecx,@aa.x
         mov edx,@aa.y
         sub eax,30
         sub ebx,30
         add ecx,30
         add edx,30
         invoke  Ellipse,@bb,eax,ebx,ecx,edx
         invoke  ReleaseDC,HWND_DESKTOP,@bb
         invoke    ExitProcess,NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        end    start



现在的问题是 我要画的圆能在桌面上出现,但,是在我双击该exe文件时马上出现,之后就推出程序了
我的原意是,想当我运行程序后,等我鼠标点击后,才出现我要的那个圆图,这里getcursorpos函数是直接获取我当前鼠标在屏幕上的坐标,请问有没有哪个函数是在我鼠标点击后,才能得到我要鼠标坐标,我指的不是在消息循环里wm_lbuttondown里,我这里不想用到消息循环的东西,,,

TOP

发新话题