Como enumerar instâncias disponíveis do SQL Server usando os componentes SQLDMO

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 287737
Sumário
Usando objetos de gerenciamento distribuído (SQLDMO) do SQL Server, todos os servidores SQL em execução em um segmento de rede local podem ser listados.
Mais Informações
Para enumerar todos os servidores SQL disponíveis no segmento de rede local, execute as etapas abaixo.

Usando o Visual Basic

  1. Inicie um novo projeto Standard EXE.
  2. No menu Project , clique em referências . Selecione a biblioteca de objetos do Microsoft SQLDMO e, em seguida, clique em OK .
  3. Coloque um CommandButton e um controle ListBox no Form1.
  4. Adicione o seguinte código ao módulo do formulário:
    Private Sub Command1_Click()    Dim i As Integer    Dim oNames As SQLDMO.NameList    Dim oSQLApp As SQLDMO.Application    Set oSQLApp = New SQLDMO.Application           Set oNames = oSQLApp.ListAvailableSQLServers()    List1.Clear    For i = 1 To oNames.Count        List1.AddItem oNames.Item(i)    Next iEnd Sub					

Usando o Visual C++

  1. Inicie um aplicativo de Console Win32 nova e vazia.
  2. Adicione um novo arquivo de origem do C++ para o projeto e cole o seguinte código:
    #define UNICODE#define _UNICODE#include <windows.h>#include <tchar.h>#include <stdio.h>#include <initguid.h>#include "C:\PROGRAM FILES\MICROSOFT SQL SERVER\80\TOOLS\DEVTOOLS\INCLUDE\sqldmoid.h"#include "C:\PROGRAM FILES\MICROSOFT SQL SERVER\80\TOOLS\DEVTOOLS\INCLUDE\sqldmo.h"int main(){	LPSQLDMOAPPLICATION pDMOApp = NULL;	LPSQLDMONAMELIST pNameList = NULL;	int	iExitStatus = 1;	// assume failure.	try	{		// Initialize COM.		// 		if FAILED(CoInitialize (NULL))		{			return (iExitStatus);		}		// Create SQLDMOApplication.		if FAILED(CoCreateInstance(CLSID_SQLDMOApplication, NULL, CLSCTX_INPROC_SERVER, IID_IWSQLDMOApplication, (LPVOID*)&pDMOApp))		{			return (iExitStatus);		}			// Get the list of servers.		if SUCCEEDED(pDMOApp->ListAvailableSQLServers(&pNameList))		{			long lCount=0;			BSTR strName=NULL;			//retrieve the count 			pNameList->GetCount(&lCount);			_tprintf(_T("There are %d SQL Servers active on the network.\n"),lCount );			for(long i=0; i < lCount; i++)			{				//get the server name				pNameList->GetItemByOrd(i, &strName);				_tprintf(_T("%s\n"),strName );			}			iExitStatus = 0;		}		if (pDMOApp)		{			pNameList = NULL;			pDMOApp->Release();			pDMOApp = NULL;		}	}	catch(...)	{		_tprintf(TEXT("error dmolistservers unhandled exception (%d)\n"), GetLastError() );	}	return iExitStatus;}					
Sqldmo

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 287737 - Última Revisão: 02/22/2007 22:15:37 - Revisão: 5.3

Microsoft SQL Server 7.0 Standard Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft Visual Basic 5.0 Enterprise Edition, Microsoft Visual Basic Enterprise Edition for Windows 6.0, Microsoft Visual C++ 6.0 Enterprise Edition, Microsoft Visual C++ 6.0 Professional Edition, Microsoft Visual C++, 32-bit Learning Edition 6.0, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Workgroup Edition

  • kbmt kbhowto kbinfo KB287737 KbMtpt
Comentários