我的代码在Delphi5中没问题,可是重装系统并装了Delphi7后,下面的代码却不对了,请问是什么原因?
  StrDllPath:=sArray+'\myData.CDS';
  If FileExists(StrDllPath) Then
    ClientDataSet2.LoadFromFile(StrDllPath)
  else begin
    ClientDataSet2.FileName:=StrDllPath;
  end;在执行    ClientDataSet2.LoadFromFile(StrDllPath)‘
时出错:
"raised exception class Exception with message 'Error loading MIDAS.DLL'. 

解决方案 »

  1.   

    不是,这个提示是他没有加载这个DLL文件,要加载一下,regsvr32 路径+midas.dll 就可以了
    如果没有这个文件去网上下载一个就可以了
      

  2.   

    的确是加载的问题,可是:
    1、为什么在以前的系统中我不用加载呢?而且我还做了安装软件包,对没有装Delphi5的机子,安装包只是在安装时把MIDAS.DLL拷贝到系统目录下就行了啊(的确能用)?2、我软件做好了以后,如何让用户加载,用户不一定会用 regsvr32啊?
      

  3.   

    以前有一篇文章介绍用TClientDataSet作本地小数据库时说:
    使用TClientDataSet控件的应用程序发布的注意事项:
      如前所述,使用TClientDataSet控件的程序发布时不需要任何数据库驱动程序,大大节省了安装文件的大小。但是,在发布程序时别忘了将Windows系统目录下midas.dll(257KB)与应用程序一起发布(运行必须),否则,程序仍然无法正常运行。用Delphi5时,我就是这么做的,我在打包时把midas.dll做成安装时装到 winnt\system32目录下,应用程序能找到这个DLL就能用了,并没有说要注册啊?
      

  4.   

    又:为什么要我手工注册,难道Delphi7安装包自己不会注册?