Option ExplicitPrivate Sub Command1_Click() Dim aa As Boolean aa = GetLocalSQLServer(cmbServer111) = True End Sub'在工程-引用裏面引用:Microsoft SQLDMO Object Library Private Sub Form_Load() '獲取局域網SQL server伺服器名稱添加到下拉式列示方塊 Dim dmo As SQLDMO.NameList Dim server As New SQLDMO.Application Dim i As Long Set dmo = server.ListAvailableSQLServers For i = 1 To dmo.Count ServerName.AddItem dmo(i) Next i ServerName.ListIndex = ServerName.ListCount - 2 End Sub '引用Microsoft SQLDMO Object Library '局域網裏搜索SQL伺服器 '可以列出局域網內註冊或未註冊的SQL伺服器 '參數:用於顯示伺服器名的下拉式列示方塊 Public Function GetLocalSQLServer(ByRef cmbServer As ComboBox) As Boolean Dim oSQLServerDMOApp As SQLDMO.Application Dim oServerGroup As SQLDMO.ServerGroup Dim oRegisteredServer As SQLDMO.RegisteredServer Dim i As Integer, j As Integer Dim namX As NameList Dim blnEquate As Boolean
Screen.MousePointer = 11
Set oSQLServerDMOApp = New SQLDMO.Application
cmbServer.Clear '首先顯示的是註冊了的資料庫 '處理所有伺服器組 For Each oServerGroup In oSQLServerDMOApp.ServerGroups '處理每個註冊了的伺服器 For Each oRegisteredServer In oServerGroup.RegisteredServers '添加每個名字到 combobox cmbServer.AddItem oRegisteredServer.Name Next Next Set oRegisteredServer = Nothing Set oServerGroup = Nothing '接下來顯示尚未註冊的資料庫 Set namX = oSQLServerDMOApp.ListAvailableSQLServers For i = 1 To namX.Count blnEquate = False '檢查該伺服器是否已經被列出來 For j = 0 To cmbServer.ListCount - 1 If cmbServer.List(j) = namX.Item(i) Then blnEquate = True Exit For '退出內圈迴圈 End If Next j If blnEquate = False Then cmbServer.AddItem namX.Item(i) End If Next i
'顯示第一個伺服器 If cmbServer.ListCount > 0 Then cmbServer.ListIndex = 0 End If
Dim aa As Boolean
aa = GetLocalSQLServer(cmbServer111) = True
End Sub'在工程-引用裏面引用:Microsoft SQLDMO Object Library
Private Sub Form_Load()
'獲取局域網SQL server伺服器名稱添加到下拉式列示方塊
Dim dmo As SQLDMO.NameList
Dim server As New SQLDMO.Application
Dim i As Long
Set dmo = server.ListAvailableSQLServers
For i = 1 To dmo.Count
ServerName.AddItem dmo(i)
Next i
ServerName.ListIndex = ServerName.ListCount - 2
End Sub
'引用Microsoft SQLDMO Object Library
'局域網裏搜索SQL伺服器
'可以列出局域網內註冊或未註冊的SQL伺服器
'參數:用於顯示伺服器名的下拉式列示方塊
Public Function GetLocalSQLServer(ByRef cmbServer As ComboBox) As Boolean
Dim oSQLServerDMOApp As SQLDMO.Application
Dim oServerGroup As SQLDMO.ServerGroup
Dim oRegisteredServer As SQLDMO.RegisteredServer
Dim i As Integer, j As Integer
Dim namX As NameList
Dim blnEquate As Boolean
Screen.MousePointer = 11
Set oSQLServerDMOApp = New SQLDMO.Application
cmbServer.Clear
'首先顯示的是註冊了的資料庫
'處理所有伺服器組
For Each oServerGroup In oSQLServerDMOApp.ServerGroups
'處理每個註冊了的伺服器
For Each oRegisteredServer In oServerGroup.RegisteredServers
'添加每個名字到 combobox
cmbServer.AddItem oRegisteredServer.Name
Next
Next
Set oRegisteredServer = Nothing
Set oServerGroup = Nothing '接下來顯示尚未註冊的資料庫
Set namX = oSQLServerDMOApp.ListAvailableSQLServers
For i = 1 To namX.Count
blnEquate = False
'檢查該伺服器是否已經被列出來
For j = 0 To cmbServer.ListCount - 1
If cmbServer.List(j) = namX.Item(i) Then
blnEquate = True
Exit For '退出內圈迴圈
End If
Next j
If blnEquate = False Then
cmbServer.AddItem namX.Item(i)
End If
Next i
'顯示第一個伺服器
If cmbServer.ListCount > 0 Then
cmbServer.ListIndex = 0
End If
Set namX = Nothing
Set oSQLServerDMOApp = Nothing
Screen.MousePointer = 0
End Function