小弟在自己电脑上装SQL SERVER 2000失败后,装了MSDE(是成功安装了的),可是在用SQLDMO枚举的时候,找不到服务器,得到的列表是空的。可是用ADOTABLE和ADOCONNECTION能成功连接服务器,而且在VFP9。0R的DATAEXPLORE下也能成功连接,不知为什么?因为自己现在在网吧,无法贴出相关代码。请高手指教一二?是MSDE本身的问题,还是非曲直MSDE本来无法被SQLDMO.APPLICATION枚举到?多谢了另外,哪位大侠有用SQLDMO来创建数据库的DELPHI代码?多谢了?

解决方案 »

  1.   

    procedure Tfrmlan1.FormCreate(Sender: TObject);
      var
      SQLServer: Variant;
      ServerList: Variant;
      i,nServers: integer;
    begin
      SQLServer := CreateOleObject('SQLDMO.Application');
      ServerList := SQLServer.ListAvailableSQLServers;
      nServers := ServerList.Count;
      HostName.Items.Clear;
      for i := 1 to nServers do
          HostName.Items.Add(ServerList.Item(i));
      HostName.Text := ServerList.Item(1);
      SQLServer := NULL;
      ServerList := NULL;
    end;将SQLDMO.DLL文件复制到
    windows\system(win98),system32(xp,2000)
    后REGSVR32.EXE SQLDMO.DLL
      

  2.   

    代码也是这样啊,但是就是枚举不到的。SQLDMO本身是没有问题的,否则会出错的。
    但是返回来的服务器数为0用SQLDMO.SQLSERVER连接时报错:没有与可信任的SQL SERVER相关联。真是见鬼了。
      

  3.   

    PromptDataSource(0,'Provider=SQLOLEDB.1;Persist Security Info=True'),可以调出连接设置框