首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

调用API函数刷新桌面与右键刷新桌面的有关问题

2012-04-09 
调用API函数刷新桌面与右键刷新桌面的问题利用网站上的API执行刷新桌面成功了,但是我修改了桌面上的文件夹

调用API函数刷新桌面与右键刷新桌面的问题
利用网站上的API执行刷新桌面成功了,但是我修改了桌面上的文件夹的属性,刷新了没反应,
右键刷新桌面就能体现修改,感觉是不是少了加载?新手请教。
  [DllImport("user32.dll", EntryPoint = "GetDesktopWindow")]
  public static extern IntPtr GetDesktopWindow();
  [DllImport("user32.dll ", CharSet = CharSet.Auto, ExactSpelling = true)] 
  public static extern bool RedrawWindow(IntPtr hwnd, COMRECT rcUpdate, IntPtr hrgnUpdate, int flags); 


   
  public class COMRECT 
  { 
  public int left; 
  public int top; 
  public int right; 
  public int bottom; 
  public COMRECT() 
  { 
  } 
  public COMRECT(int left, int top, int right, int bottom) 
  { 
  this.left = left; 
  this.top = top; 
  this.right = right; 
  this.bottom = bottom; 
  } 
  } 

  //调用示例如下: 
  RedrawWindow(GetDesktopWindow(), null, IntPtr.Zero, 0x85);

[解决办法]
最后一个参数,应该是API的RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE ,不知道你的0x85是否包含了这些标志,

另外,一般来说第一个参数也可以不用GetDesktopWindow(),直接给null就可以刷新桌面,

热点排行