Red de conocimiento informático - Material del sitio web - ¿Cómo obtener el nombre de host, el nombre de usuario y la IP en VB? ¡¡¡Urgente!!!

¿Cómo obtener el nombre de host, el nombre de usuario y la IP en VB? ¡¡¡Urgente!!!

[VB] Obtener el nombre del host

Función de declaración pública GetComputerName Lib "kernel32" Alias ​​​​"GetComputerNameA" (ByVal lpBuffer como cadena, nSize As Long) As Long

Función pública GetPcName() como cadena

Dim compname como cadena, retval As Long

compname = Space(255)

retval = GetComputerName( nombrecomp, 255 )

nombrecomp = Left(nombrecomp, InStr(nombrecomp, vbNullChar) - 1)

GetPcName = nombrecomp

Función final

[ VB] Obtener todas las direcciones IP de esta máquina (red externa, intranet)

Opción explícita

Public Declare Sub CopyMemory Lib "kernel32" Alias ​​​​"RtlMoveMemory" (Destino Como cualquiera, fuente como cualquiera, longitud ByVal tan larga)

Función de declaración pública GetIpAddrTable Lib "IPHlpApi" (pIPAdrTable como byte, pdwSize tan larga, clasificación ByVal como larga) tan larga

Const Max_IP = 5

Escriba IPINFO

dwAddr mientras

dwIndex mientras

dwMask mientras

dwBCastAddr tan largo

dwReasmSize tan largo

UnUsed1 como entero

UnUsed2 como entero

Tipo final

Tipo MIB_IPADDRTABLE

dEntrys siempre

mIPInfo(Max_IP) como IPINFO

Tipo final

Tipo IP_Array

>

mBuffer As MIB_IPADDRTABLE

BufferLen As Long

Tipo final

Sub Main()

Inicio

End Sub

Función pública ConvertAddressToString(longAddr As Long) Como cadena

Dim MyByte(3) As Byte

Dim Cnt As Long

CopyMemory MyByte(0), longAddr, 4

Para Cnt = 0 a 3

ConvertAddressToString = ConvertAddressToString CStr(MyByte(Cnt))

Siguiente Cnt

ConvertAddressToString = Left$(ConvertAddressToString, Len(ConvertAddressToString) - 1)

Función final

Public Sub Start()

Atenuar Ret mientras, Tel mientras

Atenuar bBytes() como byte

Atenuar listado como MIB_IPADDRTABLE

En caso de error Ir al final

GetIpAddrTable ByVal 0amp;, Ret, True

Si Ret lt; = 0, entonces salga de Sub

ReDim bBytes(0 To Ret - 1) como byte

GetIpAddrTable bBytes(0), Ret, False

CopyMemory Listing.dEntrys, bBytes(0), 4

MsgBox "Encontrado" amp;dEntrys amp; !", 0, "Preguntar"

For Tel = 0 To Listing.dEntrys - 1

CopyMemory Listing.mIPInfo(Tel), bBytes(4 (Tel * Len(Listing . mIPInfo(0)))), Len(Listing.mIPInfo(Tel)) 'Copiar la estructura completa al Listado

MsgBox "Dirección IP:" amp;

nvertAddressToString(Listing.mIPInfo(Tel).dwAddr), 0, "Preguntar"

Siguiente

Fin

End1:

MsgBox "¡Error!", 0, "Preguntar"

Fin

Fin Sub