做了个小程序,用到了findwindow和enumwindows这2个api,大部分人都用的好好地,唯独有2个用vista系统的人用着出错,貌似返回的窗口句柄为0,xp下一切正常。
  请问,有什么选项或者怎么设vista的权限才能让程序正常运行?因为完全没用过vista,不知道怎么下手。。

解决方案 »

  1.   

    不要用服务,用Shellexecute的Runas指定用管理员身份运行
      

  2.   

    如果程序作者是在XP下开发的,可能程序的兼容性会出现些问题。一般说来程序都是向上兼容比较差。因为这个原因,我现在写程序都是在VISTA系统下写,写出来的程序拿到XP上面也是正常运行的。
      

  3.   

    FindWindow需要有权限访问目标窗口才行。比如用普通用户身份运行的程序不能访问以管理员身份运行的程序的窗口。