当前位置: 代码迷 >> C# >> C#调用[DllImport("user32.dll")]、[DllImport("gdi32.dll")]半小时后失灵
  详细解决方案

C#调用[DllImport("user32.dll")]、[DllImport("gdi32.dll")]半小时后失灵

热度:205   发布时间:2016-05-05 04:59:16.0
C#调用[DllImport("user32.dll")]、[DllImport("gdi32.dll")]半小时后失效
本帖最后由 f2618958 于 2015-01-24 15:42:06 编辑
本人用VS2010 、C# 想模拟按键精灵写一个脚本,循环 判断某点的颜色是否 等于某个数值。
前面循环几十次(大概半个小时这样) 用起来都没问题,可是用了半个小时左右,就判断不到 那一点的颜色了,然后我断电调试,发现程序还是在运行的,调试的时候到判断颜色的地方,判断出那点是255,255,255也就是白色。
主要代码如下


当程序失效的时候我调试过 前面没问题 当到了这个地方的时候 C是=0;代码如下

------解决思路----------------------
既然知道用GetDC,那怎么会不知道用ReleaseDC呢.
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "ReleaseDC")]
public static extern int ReleaseDC(System.IntPtr hWnd,System.IntPtr hDC);
  相关解决方案