枚举网络中SQLSERVER服务器的方法
来源:互联网 发布:宏编程鼠标是什么意思 编辑:程序博客网 时间:2024/05/16 04:30
方法一:调用API函数法
摘自: http://www.pcbookcn.com/article/2360.htm
Private Declare Function NetServerEnum Lib "netapi32" _
(lpServer As Any, ByVal lLevel As Long, vBuffer As Any, _
lPreferedMaxLen As Long, lEntriesRead As Long, lTotalEntries As Long, _
ByVal lServerType As Long, ByVal sDomain$, vResume As Any) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination _
As Any, Source As Any, ByVal Length As Long)
Private Declare Function lstrlenW Lib "kernel32" (ByVal lpString As Long) As Long
Private Type SV_100
platform As Long
name As Long
End Type
Private Sub FillServerList()
Dim sv100 As SV_100, nRet As Long, i As Long
Dim lServerInfo As Long, lPreferedMaxLen As Long, lEntriesRead As Long
Dim lTotalEntries As Long, sDomain As String, vResume As Variant
Dim buffer() As Byte, nLen As Long
lPreferedMaxLen = 65536
nRet = NetServerEnum(0, 101, lServerInfo, lPreferedMaxLen, lEntriesRead, lTotalEntries, 4, sDomain, vResume)
If nRet = 0 Or nRet = 234& Then
For i = 0 To lEntriesRead - 1
CopyMemory sv100, ByVal lServerInfo, Len(sv100)
nLen = lstrlenW(sv100.name) * 2
If nLen Then
ReDim buffer(0 To (nLen - 1)) As Byte
CopyMemory buffer(0), ByVal sv100.name, nLen
End If
'将服务器名加入列表控件中
cboServer.AddItem buffer '服务器名
lServerInfo = lServerInfo + 24
Next i
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------
方法二:使用SQLDMO的Application对象
摘自Microsoft自带的SQLDMO示例
Private Sub FillServerList()
Dim i As Integer
'Use the SQL DMO object to find available SQL Servers
Dim oSQLServerDMOApp As SQLDMO.Application
'Use the SQL DMO Application Object to find the available SQL Servers
Set oSQLServerDMOApp = New SQLDMO.Application
Dim namX As NameList
Set namX = oSQLServerDMOApp.ListAvailableSQLServers
For i = 1 To namX.Count
cboServer.AddItem namX.Item(i)
Next
If cboServer.ListCount > 0 Then
'Show top server
cboServer.ListIndex = 0
End If
oSQLServerDMOApp.Quit
Set oSQLServerDMOApp = Nothing
End Sub
- 枚举网络中SQLSERVER服务器的方法
- vb.net枚举网络中所有的SQL 2000服务器。
- vb.net枚举网络中所有的SQL 2000服务器
- SqlServer中在当前数据库服务器上得到另一数据库服务器上数据的方法
- Sqlserver远程/网络事务的支持(在触发器中调用远程服务器)
- 枚举SQLServer的实例
- sqlserver 中提高查询性能的方法
- sqlserver 中提高查询性能的方法
- SqlServer中BCP导出数据的方法
- sqlserver中删除重复行的方法
- sqlserver中加英文单引号的方法
- SQLServer 中提高查询性能的方法
- SQLServer 中提高查询性能的方法
- delphi中遍历枚举类型的方法
- SqlServer中创建SqlServer连接服务器
- SQLServer的链接服务器
- SQLServer 中跨服务器查询
- sqlserver中跨服务器查询
- 1112009
- 在Python中调用默认浏览器
- Cocobear用纯Python实现飞信协议
- sqlserver数据库:java连接sqlserver2005数据库心得体会
- 西安的互联网缺什么不缺什么?
- 枚举网络中SQLSERVER服务器的方法
- C++学习
- JAVA
- WiX制作安装包--系统必备
- InterlockedExchange的返回值
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(9):CONFIG_MEM_SIZE
- JavaScript中的私有成员
- java程序员面试必备的32个要点
- ARM: LPC2000 APPLICATION DOES NOT REACH MAIN