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. 

相关阅读 >>

Delphi基于高斯-拉普拉斯算子的图像边缘检测

Delphi打开网址链接的四种方法

Delphi真正实现延时暂停功能

Delphi topendialog设置多个过滤条件

Delphi字符串、数组操作函数

Delphi 内存分配 stralloc

Delphi dataset和json互转函数

Delphi模仿“千千静听”滚动标题栏,非常简单!

Delphi屏蔽webbrowser页面中传出来的声音

Delphi中使用activex的一些心得

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...