elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [DUDA] Ver mi ip vb6
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [DUDA] Ver mi ip vb6  (Leído 9,125 veces)
chrisssss

Desconectado Desconectado

Mensajes: 8


Ver Perfil
[DUDA] Ver mi ip vb6
« en: 26 Noviembre 2009, 20:50 pm »

Bueno esa era mi duda estoy haciendo un programa con vb6 y queria saber como se hace para que dsp de apretar un boton te salga la ip que uno tiene osea modem normal sin router probe con el Winsock algo asi y no me andubo


En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: [DUDA] Ver mi ip vb6
« Respuesta #1 en: 26 Noviembre 2009, 20:54 pm »

No se mucho de VB pero no lo podrias hacer abriendo la CMD y escribiendo "ipconfig:huh:


En línea



chrisssss

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: [DUDA] Ver mi ip vb6
« Respuesta #2 en: 26 Noviembre 2009, 21:05 pm »

si pero me gustaria que se viera de otra forma... ej: se abre una ventanita y dice tu ip es 123.123.213
En línea

SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: [DUDA] Ver mi ip vb6
« Respuesta #3 en: 27 Noviembre 2009, 11:46 am »

hola, estoy intentando crear el script que necesitas (en CMD), pero con mi metodo necesitarias de la herramienta "sed.exe", te la dejo en megaupload para que no busques.

sería algo así:

Código:
@echo off

ipconfig >> %systemdrive%\ip.txt

type "%systemdrive%\ip.txt" | find /i "ipv4" >> %systemdrive%\ip2.txt

@SED.EXE "/IPv4/ s/IPv4. . . . . . . . . . . . . . /Ip es/Ig" %systemdrive%\ip2.txt > %systemdrive%\ip3.txt

echo+
type "%systemdrive%\ip3.txt"

del /f "%systemdrive%\ip.txt" & del /f "%systemdrive%\ip2.txt" & del /f "%systemdrive%\ip3.txt"

pause>nul


aunque lo mismo se podria hacer sin el SED, pero para mi es mucho más fácil así, aunque no consigo quitar la palabra "dirección" porque lleva acento y el comando sed no la reconoce bien así, lo he podido dejar mas o menos como tu querias mira:



Bueno al menos con eso tienes una idea.

Aquí el "SED.exe" >> http://www.megaupload.com/?d=8T3LZBS1 (está comprimido en winrar, lo ejecutas para instalarlo en windows, o descomprimes e instalas manualmente)

saludos.

« Última modificación: 27 Noviembre 2009, 12:01 pm por pitoloko » En línea

No he vuelto, solo estoy de paso.
SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: [DUDA] Ver mi ip vb6
« Respuesta #4 en: 27 Noviembre 2009, 11:59 am »

Prueba a cambiar esta linea:

Código:
echo+
echo Tu & type %systemdrive%\ip3.txt"
En línea

No he vuelto, solo estoy de paso.
fary


Desconectado Desconectado

Mensajes: 1.076



Ver Perfil WWW
Re: [DUDA] Ver mi ip vb6
« Respuesta #5 en: 27 Noviembre 2009, 18:28 pm »

creo que esta es la sección de vb.... no de batch...

salu2!
En línea

Un byte a la izquierda.
xkiz ™


Desconectado Desconectado

Mensajes: 1.252


Ver Perfil WWW
Re: [DUDA] Ver mi ip vb6
« Respuesta #6 en: 27 Noviembre 2009, 18:45 pm »

vos que queres que te salga, la Ip Public o la Ip local?
bue para obtener la Ip public, yo siempre hice asi:


Modulo BAS:
Código
  1. Const INTERNET_OPEN_TYPE_DIRECT = 1
  2. Const INTERNET_OPEN_TYPE_PROXY = 3
  3. Const INTERNET_FLAG_RELOAD = &H80000000
  4. Const sURL = "http://checkip.dyndns.org/"
  5. Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
  6. Private Declare Function InternetCloseHandle Lib "wininet" (ByVal hInet As Long) As Integer
  7. Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
  8. Private Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long
  9. Public Function TheIP()
  10. Dim pIP() As String
  11. Dim nose As String
  12.    Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long
  13.    sBuffer = Space(1000)
  14.    hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0)
  15.    hFile = InternetOpenUrl(hOpen, sURL, vbNullString, ByVal 0&, INTERNET_FLAG_RELOAD, ByVal 0&)
  16.    InternetReadFile hFile, sBuffer, 1000, Ret
  17.  
  18.    InternetCloseHandle hFile
  19.    InternetCloseHandle hOpen
  20.  
  21.    pIP = Split(Trim(sBuffer), ": ")
  22.    nose = Left(pIP(1), Len(pIP(1)) - 16)
  23.    TheIP = nose
  24. End Function

y para obtener la Ip local: Obtener la Ip - Función api GetIpAddrTable
« Última modificación: 27 Noviembre 2009, 18:55 pm por xkiz » En línea

SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: [DUDA] Ver mi ip vb6
« Respuesta #7 en: 27 Noviembre 2009, 20:47 pm »

creo que esta es la sección de vb.... no de batch...

salu2!

Bueno, contesté porque este post primero estaba en la sección batch y ahora lo han movido aquí, además se que a chris le sirvió un batch para otro boton, y le serviria un batch para esto tambien :).

saludos.
« Última modificación: 27 Noviembre 2009, 20:48 pm por pitoloko » En línea

No he vuelto, solo estoy de paso.
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.605


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: [DUDA] Ver mi ip vb6
« Respuesta #8 en: 28 Noviembre 2009, 15:44 pm »

No creo que sea mejor solución que la de xkiz pero podrías utilizar el control winsock y llamar a msgbox winsock1.localip
En línea

Hasseds

Desconectado Desconectado

Mensajes: 145



Ver Perfil
Re: [DUDA] Ver mi ip vb6
« Respuesta #9 en: 28 Noviembre 2009, 17:12 pm »

Una tercer opcion seria WMI, pero a veces sirve y a veces not

Código:

Option Explicit

Private Sub Form_Load()
Me.AutoRedraw = True: Me.Height = 6045: Me.Width = 4300
LoadControl
End Sub

Sub LoadControl()
  If WMI_disponible() Then
    'Me.Print "TU SISTEMA TIENE WMI", vbOKOnly + vbInformation, "WMI"
    getWMI_Info
  Else
    Me.Print "TU SISTEMA NO TIENE WMI", vbOKOnly + vbExclamation, "WMI"
  End If
End Sub

Public Function WMI_disponible() As Boolean
Dim WMI As Object
On Error Resume Next
Set WMI = GetObject("winmgmts:")
WMI_disponible = (Err.Number = 0)
End Function

Private Sub getWMI_Info()

Dim oAdapters As Object
Dim oAdapter As Object
On Error GoTo Fehler_WMI

Me.Print "----------------------------------------------------------------------------------------------"

Set oAdapters = GetObject("winmgmts:").ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")

Dim ctlip1 As String: Dim ctlip2 As String

For Each oAdapter In oAdapters
  With oAdapter
    'Me.Cls '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    If Join(.IPAddress) <> ctlip1 Then
        Me.Print "NOMBRE:" & vbTab & vbTab & vbTab & Environ$("computername")
        Me.Print "DIRECCION IP:" & vbTab & vbTab & vbTab & Join(.IPAddress)
        Me.Print "MASCARA DE SUBRED:" & vbTab & Join(.IPSubnet)
        'If Not IsNull(.DefaultIPGateway) Then
            Me.Print "PUERTA DE ENLACE:" & vbTab & vbTab & Join(.DefaultIPGateway)
        'End If
        Me.Print "DIRECCION MAC:" & vbTab & vbTab & .MACAddress
        Me.Print "DNS:" & vbTab & vbTab & vbTab & vbTab & .DNSHostName
        'If .WINSPrimaryServer <> "" Then
            Me.Print "WINS 1:" & vbTab & vbTab & vbTab & .WINSPrimaryServer
        'End If
        'If .WINSSecondaryServer <> "" Then
            Me.Print "WINS 2:" & vbTab & vbTab & vbTab & .WINSSecondaryServer
        'End If
        Me.Print ":---------------------------------------------------------------------------------------------"
        ctlip1 = Join(.IPAddress)
    End If
  End With
Next

On Error GoTo 0
Exit Sub

Fehler_WMI:
MsgBox "Error: " & Err.Number & vbTab & Err.Description, vbCritical
Resume Next
End Sub




« Última modificación: 28 Noviembre 2009, 17:15 pm por Hasseds » En línea

Sergio Desanti
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines