XP中,只要一把这个ListCtrl删除,对话框就能正常打开,一加入这个ListCtrl就无法打开对话框。但在win7 32位下则正常。

解决方案 »

  1.   

    对话框中的控件如果创建失败,对话框就会创建失败,(可以选择 创建失败也显示 (No Create Fail))
      

  2.   

    感谢!使用了这个属性以后,确实可以进对话框了,但是对话框上,那个ListCtrl控件(列表控件)显示不出来。这是怎么回事?
    在WIN7 64位, 32位以及VISTA中均没有问题,就是XP有问题。
      

  3.   

    我又试了一下,发现在XP下,不仅list control显示不出来,而且Tree contrl、 Tab control,还有象Rich Edit 2.0 Control等控件也是显示不出来。只有基本的象Button、Satic 等控件显示没有问题。我的XP系统安装了VS2008,是在VS2008里编译的。难道XP不能使用这些控件吗?象Tree control这些控件挺常用的啊,这是什么原因造成的?
      

  4.   

    原因已找到,是没有添加InitCommonControls()语句造成的,我本来知道使用通用控件是需要这一条语句的,但是WIN7下没有这条语句使用没有问题啊,怪不得人家说WIN7 容错性比较好,开发最好在XP下进行。也许WIN7版本比较高,通用直接载入到内存,不需要这条语句了。非常感谢!
      

  5.   

    // 如果一个运行在 Windows XP 上的应用程序清单指定要
    // 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式,
    //则需要 InitCommonControlsEx()。否则,将无法创建窗口。