¿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