FoxPro/Visual FoxPro - NetGetDCName para obtener el nombre del server

 
Vista:

NetGetDCName para obtener el nombre del server

Publicado por Frank (16 intervenciones) el 27/02/2010 00:27:46
Hola a tod@s...

Estoy haciendo una aplicación en VF9 para la cual necesito obtener el nombre del servidor del dominio (PDC) al cual está conectada la PC que ejecute el programa; he encontrado que con API y la función NetGetDCName se puede obtener, sin embargo no he encontrado cómo implementarla con éxito.

Si alguien me puede ayudar se los agradecería mucho.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:NetGetDCName para obtener el nombre del server

Publicado por Frank (16 intervenciones) el 05/03/2010 14:34:50
Ya encontré la solución, lo hice de esta manera:

LOCAL lnBufferIn
LOCAL lcBufferOut
LOCAL lnLen
LOCAL lcCadena
LOCAL lnResultado

STORE "" TO lcCadena

DECLARE INTEGER NetGetDCName IN netapi32;
STRING servername,;
STRING domainname,;
LONG @bufptr

DECLARE LONG NetApiBufferFree IN netapi32;
LONG pBuffer

DECLARE RtlMoveMemory IN kernel32;
STRING @pTo, ;
LONG uFrom, ;
LONG lSize

DECLARE LONG lstrlenW IN kernel32 ;
LONG lpString

lnResultado = NetGetDCName(.NULL., .NULL., @lnBufferIn)

IF lnResultado != 0
RETURN lcCadena
ENDIF

lnLen = lstrlenW(lnBufferIn) * 2

lcBufferOut = SPACE(lnLen)

RtlMoveMemory(@lcBufferOut, lnBufferIn, lnLen)

lnResultado = NetApiBufferFree(lnBufferIn)

FOR i = 1 TO lnlen
lcCadena = lcCadena + IIF(ASC(SUBSTR(lcBufferOut, i, 1)) != 0, CHR(ASC(SUBSTR(lcBufferOut, i, 1))), "")
NEXT

RETURN lcCadena
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio
Val: 471
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

NetGetDCName para obtener el nombre del server

Publicado por Mauricio (1541 intervenciones) el 26/06/2010 17:29:27
Aca tienes un link para saber cuales servidores estan disponibles mediante una funcion API, espero te sea de utlidad!!!!!!!!!!!!!
http://www.portalfox.com/index.php?name=News&file=article&sid=1439
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar