我的程序里面有个一个combobox。里面有几个item
第一个为空,其他是0 1 2等值
该combobox无任何事件在xp下选择其任何item都不会出错
但在98或2000下选第一项就会报错。98下报的是非法错误,然后就终止程序了。
2000下报的是ntdll.dll访问错误,但程序不会终止。请各位帮忙!

解决方案 »

  1.   

    不用代码。你自己放个ComboBox,第一项为空,其他不为空。在98或2000下运行后,点combobox的第一项
      

  2.   

    忘了说了,程序是用delphi 7编译的
      

  3.   

    是不是98、2K、XP在处理combox的返回值时有差异。或者是BUG!!反正我没遇到过,也没法试!!
      

  4.   

    我怀疑是Windows Common Control Library的版本太低
    如果你安装了office xp等其他程序,更新了Windows Common Control Library,
    那么你的程序也不会出错
      

  5.   

    你有没有处理相关combox打开的代码???我觉得不会出错才对!
      

  6.   

    我的win98是昨天晚上才装的。装了一个microsoft data access component 2.7
    其他什么都没装
      

  7.   

    var
      VersionInfo: TOSVersionInfo;
    begin
      VersionInfo.dwOSVersionInfoSize := SizeOf( TOSVersionInfo );
      if Windows.GetVersionEx( VersionInfo ) then
      begin
         with VersionInfo do
         begin
            case dwPlatformId of
               VER_PLATFORM_WIN32s: //WIN32操作系统
               VER_PLATFORM_WIN32_WINDOWS: // WIN95、98、ME 操作系统
               VER_PLATFORM_WIN32_NT: // WINNT、2000操作系统
            end; // case dwPlatformId
         end; // with VersionInfo
      end; // if GetVersionEx
    end;
    到相应的地方加上这段代码!!
      

  8.   

    我的机器没有问题,你更新一下ComCtrl32这个动态库看看,有问题也可能就是它的问题