我还没得到SQL SERVER,怎么能用SQLDMO?!

解决方案 »

  1.   

    Private Sub Command1_Click()
    '放一个cmobo控件命名为txtServer,引用Microsoft SQLDMO object Libraray库  Dim oSQLServerDMOApp As SQLDMO.Application
      Set oSQLServerDMOApp = New SQLDMO.Application
      Dim i As Integer
      Dim namX As NameList
      Set namX = oSQLServerDMOApp.ListAvailableSQLServers
      For i = 1 To namX.Count
        txtServer.AddItem namX.Item(i)
      Next
      'Show top server
      txtServer.ListIndex = 0
    End Sub
      

  2.   

    谢谢,lihonggen0(李洪根,用VB,标准答案来了) ,但好像装在自己机器上的sql server不能枚举出来,这个是怎么回事?
      

  3.   

    NetServerEnum
    The NetServerEnum function lists all servers of the specified type that are visible in the specified domain. For example, an application can call NetServerEnum to list all domain controllers only or all SQL servers only.You can combine bit masks to list several types. For example, a value of 0x00000003 combines the bit masks for SV_TYPE_WORKSTATION (0x00000001) and SV_TYPE_SERVER (0x00000002).Note  If you require more information on the type, name, and comment for a specific server, use the WNetEnumResource function.Security Requirements
    No special group membership is required to successfully execute NetServerEnum.NET_API_STATUS NetServerEnum(
      LPWSTR servername,     
      DWORD level,           
      LPBYTE *bufptr,        
      DWORD prefmaxlen,      
      LPDWORD entriesread,   
      LPDWORD totalentries,  
      DWORD servertype,      
      LPWSTR domain,         
      LPDWORD resume_handle  
    );
     
    Parameters
    servername 
    Pointer to a Unicode string containing the name of the remote server on which the function is to execute. A NULL pointer or string specifies the local computer. 
    level 
    Specifies one of the following values to return the level of information provided. Value Meaning 
    100 The bufptr parameter points to an array of SERVER_INFO_100 structures. 
    101 The bufptr parameter points to an array of SERVER_INFO_101 structures. 
    bufptr 
    Pointer to the buffer in which the data set with the level parameter is stored. 
    prefmaxlen 
    Preferred maximum length, in 8-bit bytes of returned data. 
    entriesread 
    On return, the actual enumerated element count is located in the doubleword pointed to by entriesread. 
    totalentries 
    Returns the total number of visible servers and workstations on the network. 
    servertype 
    A DWORD mask that filters server entries to return from the enumeration. The defined mask bits specify: Symbolic constant Value Meaning 
    SV_TYPE_WORKSTATION 0x00000001  All Net workstations 
    SV_TYPE_SERVER 0x00000002  All Net servers 
    SV_TYPE_SQLSERVER 0x00000004 Any server running with Microsoft SQL Server 
    SV_TYPE_DOMAIN_CTRL 0x00000008 Primary domain controller 
    SV_TYPE_DOMAIN_BAKCTRL 0x00000010 Backup domain controller 
    SV_TYPE_TIMESOURCE 0x00000020 Server running the Timesource service 
    SV_TYPE_AFP 0x00000040 Apple File Protocol servers 
    SV_TYPE_NOVELL 0x00000080 Novell servers 
    SV_TYPE_DOMAIN_MEMBER 0x00000100 LAN Manager 2.x Domain Member 
    SV_TYPE_LOCAL_LIST_ONLY 0x40000000 Servers maintained by the browser. See the following Res section. 
    SV_TYPE_PRINT 0x00000200 Server sharing print queue 
    SV_TYPE_DIALIN 0x00000400 Server running dial-in service 
    SV_TYPE_XENIX_SERVER 0x00000800 Xenix server 
    SV_TYPE_MFPN 0x00004000 Microsoft File and Print for Netware 
    SV_TYPE_NT 0x00001000 Windows NT (either Workstation or Server) 
    SV_TYPE_WFW 0x00002000 Server running Windows for Workgroups 
    SV_TYPE_SERVER_NT 0x00008000 Windows NT Non-DC server 
    SV_TYPE_POTENTIAL_BROWSER 0x00010000 Server that can run the Browser service 
    SV_TYPE_BACKUP_BROWSER  0x00020000 Server running a Browser service as backup 
    SV_TYPE_MASTER_BROWSER 0x00040000 Server running the master Browser service 
    SV_TYPE_DOMAIN_MASTER 0x00080000 Server running the domain master Browser 
    SV_TYPE_DOMAIN_ENUM 0x80000000 Primary Domain  
    SV_TYPE_WINDOWS 0x00400000 Windows 95 or later 
    SV_TYPE_ALL 0xFFFFFFFF All servers 
    domain 
    A pointer to a Unicode string containing the name of the domain for which a list of servers is to returned. If NULL is specified, the primary domain is implied. 
    resume_handle 
    Reserved. Must be set to zero. Use the Wnet functions. 
    Return Values
    If the function returns account information, the return value is NERR_Success.If the function fails, the return value is one of the following error codes:Value Meaning 
    ERROR_ACCESS_DENIED The user does not have access to the requested information. 
    NERR_InvalidComputer The computer name is invalid. 
    ERROR_NO_BROWSER_SERVERS_FOUND No browser servers found. 
    ERROR_MORE_DATA  More entries are available with subsequent calls. 
    Res
    The SV_TYPE_LOCAL_LIST_ONLY flag returns the list of servers maintained by the browser internally. This has meaning only on the master browser (or on a computer that has been the master browser in the past). The master browser is the machine that currently has rights to determine which machines can be servers or workstations on the net.QuickInfo
      Windows NT: Requires version 3.1 or later.
      Windows: Unsupported.
      Windows CE: Unsupported.
      Header: Declared in lmserver.h.
      Import Library: Use netapi32.lib.See Also
      

  4.   

    谢谢xiaoxinghappy(小星) ,我试试.:)
    还有lihonggen0(李洪根,用VB,标准答案来了)的方法是不是必须在装有sql server的机器上才能用啊,我做成打包文件后(dmo.dll也一起打包了),如果在没有安装sql server的机器上安装运行就会出错,错误是activex object什么的,这是怎么回事?