Программирование >>  Автоматически обновляемые приложения 

1 ... 145 146 147 [ 148 ] 149 150 151 ... 170


SV TYPE NT = 0x00001000, SV TYPE WFW = 0x00002000, SV TYPE SERVER MFPN = 0x00004000, SV TYPE SERVER NT = 0x00008000, SV TYPE POTENTIAL BROWSER = 0x00010000, SV TYPE BACKUP BROWSER = 0x00020000, SV TYPE MASTER BROWSER = 0x00040000, SV TYPE DOMAIN MASTER = 0x00080000, SV TYPE SERVER OSF = 0x00100000, SV TYPE SERVER VMS = 0x00200000, SV TYPE WINDOWS = 0x00400000, SV TYPE DFS = 0x00800000, SV TYPE CLUSTER NT = 0x01000000, SV TYPE TERMINALSERVER = 0x02000000, SV TYPE CLUSTER VS NT = 0x04000000, SV TYPE DCE = 0x10000000, SV TYPE ALTERNATE XPORT = 0x20000000, SV TYPE LOCAL LIST ONLY = 0x40000000, SV TYPE DOMAIN ENUM = 0x80000000, SV TYPE ALL = OxFFFFFFFF,

Получить список SQL-серверов

public static ArrayList GetSQLServerList()

SERVER INFO 101 si;

IntPtr pInfo = IntPtr.Zero;

int etriesread = 0;

int totalentries = 0;

ArrayList srvs = new ArrayList();

NERR err = NetServerEnum(null, 101, out pInfo, -1, ref etriesread, ref totalentries, SV 101 TYPES.SV TYPE SQLSERVER, null, 0); if ((err == NERR.NERR Success I I

err == NERR.ERROR MORE DATA) && pInfo != IntPtr.Zero)

int ptr = pInfo.ToInt320;

for (int i = 0; i < etriesread; i++)



si = (SERVER INFO 101)Marshal.PtrToStructure(

new IntPtr(ptr), typeof(SERVER INFO 101)); srvs . Add (si . svl01 naine) ; Добавляем имя

сервера в список ptr += Marshal.SizeOf(si) ;

catch (Exception)

finally

{ Освобождаем вьщеленную память if (pInfo != IntPtr.Zero) {

NetApiBufferFree(pinfo);

return (srvs);

Получить список всех компьютеров

public static ArrayList GetServerList(SV 101 TYPES type) (

SERVER INFO 101 si;

IntPtr pinfo = IntPtr.Zero;

mt etriesread = 0;

int totalentries = 0;

ArrayList srvs = new ArrayList();

NERR err = NetServerEnum (null, 101, out pinfo, -1,

ref etriesread, ref totalentries,

SV 101 TYPES. SV TYPE ALL, null, 0); if ((err == NERR.NERR Success I err == NERR.ERROR MORE DATA)

&& pinfo != IntPtr.Zero)

int ptr = pInfo.ToInt320;

for (int i = 0; i < etriesread; i++)

si = (SERVER INFO 101)Marshal.PtrToStructure(



public static ArrayList GetDomenControllerList(SV 101 TYPES type) {

SERVER INFO 101 si;

IntPtr pInfo = IntPtr.Zero;

int etriesread = 0;

int totalentries = 0;

ArrayList srvs = new ArrayList();

NERR err = NetServerEnum(null, 101, out pInfo, -1, ref etriesread, ref totalentries, SV 101 TYPES.SV TYPE DOMAIN CTRL, null, 0); if ((err == NERR.NERR Success err == NERR.ERR0R M0RE DATA) && pInfo != IntPtr.Zero)

int ptr = pInfo.ToInt320;

for (int i = 0; i < etriesread; i++)

si = (SERVER INFO 101)Marshal.PtrToStructure(

new IntPtr(ptr), typeof(SERVER INFO 101)); srvs.Add(si.svl01 name); Добавляем имя сервера

в список ptr += Marshal.SizeOf(si);

new IntPtr(ptr), typeof(SERVER INFO 101)); srvs.Add(si.svl01 name); Добавляем имя сервера

в список ptr += Marshal.SizeOf(si);

catch (Exception) { /* Обработка ошибки } finally

{ Освобождаем выделенную память

if (pInfo != IntPtr.Zero) NetApiBufferFree(pInfo);

return (srvs);



1 ... 145 146 147 [ 148 ] 149 150 151 ... 170

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика