一、 SQL DMO
描述:SQL Distributed Management Objects(SQL分布式管理对象),存在于SQLDMO.dll文件中,实际上是一个COM 对象,通过调用SQL DMO的ListAvailableSQLServers方法取得。
列表类型:列举装有“客户端”和“服务端”的计算机。
适用条件:装有 SQL Server,且有SQLDMO.dll文件。
速度:中代码:
调用示例:GetSQLServerList(ListBox1.items);
uses
ComObj;
function GetSQLServerList(var AList: TStrings): Boolean;
var
SQLServerApp: Variant;
ServerList: Variant;
i: Integer;
begin
Result := True;
try
SQLServerApp := CreateOleObject('SQLDMO.Application');
ServerList := SQLServerApp.ListAvailableSQLServers;
for i := 1 to ServerList.Count do
AList.Add(ServerList.Item(i));
SQLServerApp := Unassigned;
ServerList := Unassigned;
except
Result := False;
end;
end;
二、 NetServerEnum
描述:网络服务函数,存在于NetApi32.dll文件中;通过NetServerEnum函数可取得装有SQL Server服务端的计算机列表,只装有SQL Server客户端的计算机将不会被列举其中;如果一台计算机的SQL Server服务刚刚启动,那么此函数将会过很久才能取到该计算机。
列表类型:仅列举装有“服务端”的计算机。
适用条件:有NetApi32.dll文件。
速度:快
调用示例:GetSQLServerList(ListBox1.items);
代码:
type
NET_API_STATUS = DWORD;
PServerInfo100 = ^TServerInfo100;
_SERVER_INFO_100 = record
sv100_platform_id: DWORD;
sv100_name: LPWSTR;
end;
共4页: 1 [2] [3] [4] 下一页 |