存档

文章标签 ‘API’

CreateProcess的命令行参数

2013年12月14日 1 条评论

最近使用CreateProcess创建rundll32.exe进程,发现并没有正常加载DLL,后来才发现是命令行参数传错了,CreateProcess并不是我想象的那样,网上找了一下,发现还有许多东西不是想的那么简单。下面的文字翻译自《INFO: Understanding CreateProcess and Command-line Arguments》
创建32位进程时CreateProcess的行为
案例1
如果传递了ApplicationName参数,且CommandLine参数是NUL[......]

继续阅读

Win32写的屏幕取色工具

2010年10月15日 没有评论

本文介绍如何通过Windows SDK编程实现鼠标屏幕取色功能,可以将技术迁移到VC/MFC等。几个关键实现:

  • 屏幕取色通过WM_TIMER来实现,而不是WM_MOUSEMOVE,因为后者只能捕获客户区的消息,根本达不到目的。
  • 无标题窗口风格是在CreateWindow的时候设置WS_POPUP风格。
  • 窗口置顶通过SetWindowPos的HWND_TOPMOST来实现。
  • 屏幕取色原理:获取桌面DC,然后GetPixel获取RGB颜色,然后通过GetRValue, GetGValue, Get[......]

继续阅读

Win32 API获取桌面DC并画图

2010年10月10日 没有评论

使用Windows SDK来对桌面DC进行画图,其实很简单,但是也有需要注意的地方。
 首先,使用GetDesktopWindow来获取桌面窗口句柄,然后就是通过句柄来获取DC了,这里需要注意,要使用GetWindowDC,而不是GetDC.然后就可以对DC进行操作了。这里是在桌面上显示三句话,用到了一些文本显示的GDI函数。
/**************************************************************
* Copyright (C[......]

继续阅读

分类: Windows SDK 标签: , , , ,

QQ抖动效果实现

2010年10月9日 2 条评论

本文所述代码可以实现QQ聊天窗口中的抖动功能,代码很简单,就是几个API的简单应用。
首先,通过GetForegroundWindow获取Z次序顶层窗口的句柄,然后通过GetWindowRect获取这个窗口的屏幕坐标,然后通过MoveWindow来实现窗口的移动,大体思路就是这样。中间为了保证不卡死,需要小小的休眠一下,本程序可以拿来搞恶作剧滴……
想看截图效果……哦,不好意思,动态效果不好截图,自己拿去编译吧。
Windows SDK/W[......]

继续阅读

分类: Windows SDK 标签: , , , ,