delphi 动态库里查询是否联接数据库


library   ConnDBDll;

{   Important   note   about   DLL   memory   management:   ShareMem   must   be   the
    first   unit   in   your   library 's   USES   clause   AND   your   project 's   (select
    Project-View   Source)   USES   clause   if   your   DLL   exports   any   procedures   or
    functions   that   pass   strings   as   parameters   or   function   results.   This
    applies   to   all   strings   passed   to   and   from   your   DLL--even   those   that
    are   nested   in   records   and   classes.   ShareMem   is   the   interface   unit   to
    the   BORLNDMM.DLL   shared   memory   manager,   which   must   be   deployed   along
    with   your   DLL.   To   avoid   using   BORLNDMM.DLL,   pass   string   information
    using   PChar   or   ShortString   parameters.   }


uses
    SysUtils,
    Classes,
    adodb,
    Forms,ComObj;

{$R   *.res}  

Function   GetSQLServerName:Variant;stdcall;
var
      SQLServer:   Variant;//uses   comobj;
      ServerList:   Variant;
begin
        SQLServer   :=   CreateOleObject( 'SQLDMO.Application ');
        ServerList:=   SQLServer.ListAvailableSQLServers;
        Result:=ServerList;    
end;

    Function   ConnFilesM(pw,user,db,computer:string):boolean;   stdcall;
    var   connection:tadoconnection;
        connstr:string;
    begin
            try
        connection:=tadoconnection.Create(nil);
        connstr:=   'Provider=SQLOLEDB.1;Password= '+pw+ ';Persist   Security   Info=True;User   ID= '+user+ ';Initial   Catalog= '+db+ ';Data   Source= '+computer;
        connection.ConnectionString:=connstr;
        connection.LoginPrompt:=false;
        connection.Connected:=true;
        result   :=   true;
        with   Application   do           //uses   Forms
            begin
            NormalizeTopMosts;
            MessageBox( '连接数据库成功! ',   '系统提示 ',0);
            RestoreTopMosts;
            end;
        except
        result   :=   false;
        with   Application   do
            begin
            NormalizeTopMosts;
            MessageBox( '连接数据库失败! ',   '系统提示 ',0);
            RestoreTopMosts;
            end;
        end;
    end;    
    exports   ConnFilesM,GetSQLServerName;
begin

end.

联系电话:
020-00000000
联系电话:
020-00000000
联系电话:
020-12345678