XP上程序无异常,WIN7上就卡死了。有没有经验给一点。
XP和WIN7处理线程的机制不一样吗?

解决方案 »

  1.   

    win7上估计除了部分API不同外, 最主要的就是有很多权限限制, 你尝试把你的程序以管理员权限运行, 看是否正常.
      

  2.   

    算了,没啥关系,你还是在win7下调试吧,有些东西很隐性。
      

  3.   

    把代码放在win7上,再编译一次看看~哈哈有的时候系统就是这么的。。无语啊
      

  4.   

    在WIN7下调试,看看死在哪儿了
      

  5.   

    有一个关于版本的api,好像是version类型的,你设置那个看看。
      

  6.   

    楼主,你添加log进去啊,crash之后看看是哪一步挂了。
      

  7.   

    用VS2010吧,VS2010和win7同一时期的,对win7的兼容性是很好的。定位bug可以用windbg,结合生成map文件定位一下。
      

  8.   

    有可能ado版本不对。用win7的编译下。
      

  9.   

    你软件系统崩溃会自动生成dmp文件么?把dmp文件分析下。
      

  10.   

    使用ProcessExp查看工具,在进程列表中找到目标进程,双击进程,在弹出的窗口中再双击cpu占用比较高的item,在弹出的窗口中找到调用堆栈,有时需要多试几次,以找到卡死的函数,走运的话,一次就能找到。
      

  11.   

    我之前也遇见过这样的事,winXP下OK,win7,64下弹出什么TODO<说明文档已经停止工作>的BUG,我怀疑是调用的DLL不匹配,有些DLL上面写着NT/XP/2000这类的系统信息,估计在WIN7上会有错。
      

  12.   

    1. 查看访问权限的问题,比如配置文件的访问权限.
    2. 查看调用的DLL的版本,是不是有不适用于win7的