imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 04.02.2003, 06:34     # 1
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
Question IP in Visual Basic

Кто знает помогите - как в Visual Basic......получить в переменную IP локального компа????.........и вывести его в TextBox или Label???
__________________
Lord Skill вне форума  
Старый 04.02.2003, 07:08     # 2
Top
AlwaysOnTop
 
Регистрация: 09.12.2002
Адрес: IMHO.WS
Сообщения: 628

Top Реально крут(а)Top Реально крут(а)Top Реально крут(а)Top Реально крут(а)
Poprobui tak

Option Explicit
Public Const MAX_WSADescription As Long = 256
Public Const MAX_WSASYSStatus As Long = 128
Public Const ERROR_SUCCESS As Long = 0
Public Const WS_VERSION_REQD As Long = &H101
Public Const WS_VERSION_MAJOR As Long = WS_VERSION_REQD \ &H100 And &HFF&
Public Const WS_VERSION_MINOR As Long = WS_VERSION_REQD And &HFF&
Public Const MIN_SOCKETS_REQD As Long = 1
Public Const SOCKET_ERROR As Long = -1

Public Type HOSTENT
hName As Long
hAliases As Long
hAddrType As Integer
hLen As Integer
hAddrList As Long
End Type

Public Type WSADATA
wVersion As Integer
wHighVersion As Integer
szDescription(0 To MAX_WSADescription) As Byte
szSystemStatus(0 To MAX_WSASYSStatus) As Byte
wMaxSockets As Integer
wMaxUDPDG As Integer
dwVendorInfo As Long
End Type

Public Declare Function WSAGetLastError Lib "wsock32" () As Long

Public Declare Function WSAStartup Lib "wsock32" _
(ByVal wVersionRequired As Long,
lpWSADATA As WSADATA) As Long

Public Declare Function WSACleanup Lib "wsock32" () As Long

Public Declare Function gethostname Lib "wsock32" _
(ByVal szHost As String,
ByVal dwHostLen As Long) As Long

Public Declare Function gethostbyname Lib "wsock32" _
(ByVal szHost As String) As Long

Public Declare Sub CopyMemory Lib "kernel32"
Alias "RtlMoveMemory" _
(hpvDest As Any,
ByVal hpvSource As Long,
ByVal cbCopy As Long)


Public Function GetIPAddress() As String

Dim sHostName As String * 256
Dim lpHost As Long
Dim HOST As HOSTENT
Dim dwIPAddr As Long
Dim tmpIPAddr() As Byte
Dim i As Integer
Dim sIPAddr As String

If Not SocketsInitialize() Then
GetIPAddress = ""
Exit Function
End If

'gethostname returns the name of the local host into
'the buffer specified by the name parameter. The host
'name is returned as a null-terminated string. The
'form of the host name is dependent on the Windows
'Sockets provider - it can be a simple host name, or
'it can be a fully qualified domain name. However, it
'is guaranteed that the name returned will be successfully
'parsed by gethostbyname and WSAAsyncGetHostByName.

'In actual application, if no local host name has been
'configured, gethostname must succeed and return a token
'host name that gethostbyname or WSAAsyncGetHostByName
'can resolve.
If gethostname(sHostName, 256) = SOCKET_ERROR Then
GetIPAddress = ""
MsgBox "Windows Sockets error " & Str$(WSAGetLastError()) & _
" has occurred. Unable to successfully get Host Name."
SocketsCleanup
Exit Function
End If

'gethostbyname returns a pointer to a HOSTENT structure
'- a structure allocated by Windows Sockets. The HOSTENT
'structure contains the results of a successful search
'for the host specified in the name parameter.

'The application must never attempt to modify this
'structure or to free any of its components. Furthermore,
'only one copy of this structure is allocated per thread,
'so the application should copy any information it needs
'before issuing any other Windows Sockets function calls.

'gethostbyname function cannot resolve IP address strings
'passed to it. Such a request is treated exactly as if an
'unknown host name were passed. Use inet_addr to convert
'an IP address string the string to an actual IP address,
'then use another function, gethostbyaddr, to obtain the
'contents of the HOSTENT structure.
sHostName = Trim$(sHostName)
lpHost = gethostbyname(sHostName)

If lpHost = 0 Then
GetIPAddress = ""
MsgBox "Windows Sockets are not responding. " & _
"Unable to successfully get Host Name."
SocketsCleanup
Exit Function
End If

'to extract the returned IP address, we have to copy
'the HOST structure and its members
CopyMemory HOST, lpHost, Len(HOST)
CopyMemory dwIPAddr, HOST.hAddrList, 4

'create an array to hold the result
ReDim tmpIPAddr(1 To HOST.hLen)
CopyMemory tmpIPAddr(1), dwIPAddr, HOST.hLen

'and with the array, build the actual address,
'appending a period between members
For i = 1 To HOST.hLen
sIPAddr = sIPAddr & tmpIPAddr(i) & "."
Next

'the routine adds a period to the end of the
'string, so remove it here
GetIPAddress = Mid$(sIPAddr, 1, Len(sIPAddr) - 1)

SocketsCleanup

End Function


Public Function GetIPHostName() As String

Dim sHostName As String * 256

If Not SocketsInitialize() Then
GetIPHostName = ""
Exit Function
End If

If gethostname(sHostName, 256) = SOCKET_ERROR Then
GetIPHostName = ""
MsgBox "Windows Sockets error " & Str$(WSAGetLastError()) & _
" has occurred. Unable to successfully get Host Name."
SocketsCleanup
Exit Function
End If

GetIPHostName = Left$(sHostName, InStr(sHostName, Chr(0)) - 1)
SocketsCleanup

End Function


Public Function HiByte(ByVal wParam As Integer) As Byte

'note: VB4-32 users should declare this function As Integer
HiByte = (wParam And &HFF00&) \ (&H100)

End Function


Public Function LoByte(ByVal wParam As Integer) As Byte

'note: VB4-32 users should declare this function As Integer
LoByte = wParam And &HFF&

End Function


Public Sub SocketsCleanup()

If WSACleanup()<> ERROR_SUCCESS Then
MsgBox "Socket error occurred in Cleanup."
End If

End Sub

Public Function SocketsInitialize() As Boolean

Dim WSAD As WSADATA
Dim sLoByte As String
Dim sHiByte As String

If WSAStartup(WS_VERSION_REQD, WSAD)<> ERROR_SUCCESS Then
MsgBox "The 32-bit Windows Socket is not responding."
SocketsInitialize = False
Exit Function
End If


If WSAD.wMaxSockets < MIN_SOCKETS_REQD Then
MsgBox "This application requires a minimum of " & _
CStr(MIN_SOCKETS_REQD) & " supported sockets."

SocketsInitialize = False
Exit Function
End If


If LoByte(WSAD.wVersion) < WS_VERSION_MAJOR Or _
(LoByte(WSAD.wVersion) = WS_VERSION_MAJOR And _
HiByte(WSAD.wVersion) < WS_VERSION_MINOR) Then

sHiByte = CStr(HiByte(WSAD.wVersion))
sLoByte = CStr(LoByte(WSAD.wVersion))

MsgBox "Sockets version " & sLoByte & "." & sHiByte & _
" is not supported by 32-bit Windows Sockets."

SocketsInitialize = False
Exit Function

End If


'must be OK, so lets do it
SocketsInitialize = True

End Function

------------------A potom vivedi eto tak

Private Sub Command1_Click()

Text1.Text = GetIPHostName()
Text2.Text = GetIPAddress()

End Sub

udachi
Top вне форума  
Старый 04.02.2003, 07:28     # 3
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
topik
Пасиб щас буду пробовать
__________________
Lord Skill вне форума  
Старый 04.02.2003, 18:59     # 4
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
topik
что то тут не так
****************
__________________
Lord Skill вне форума  
Старый 05.02.2003, 21:16     # 5
Top
AlwaysOnTop
 
Регистрация: 09.12.2002
Адрес: IMHO.WS
Сообщения: 628

Top Реально крут(а)Top Реально крут(а)Top Реально крут(а)Top Реально крут(а)
2 *Lord Skill
Pokonkretnee gde che-to ne tak?
P.S.Ya toko vecherom smogu proverit tak shto pogodi
Top вне форума  
Старый 09.02.2003, 06:03     # 6
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Wopros stoit ne sowsem korrektno.
1. U kajdoi mashini est lokalnij adres w setke - 127.0.0.0
2. Dopustim u tebya w kompe eshe setewuha s adresom 192.168.0.1 i ppp soedinenie s IP (twoim) 217.32.14.210. Kakoi iz etih IP togda schitat za tot, kotorij tebe nujen? Obichno proweryaetsya eto tak: otkriwaetsya socketnoe soedinenie s hostom kotorij tebe nujen, naprimer www.yahoo.com i potom i socketa winimaetsya adres lokalnogo interfeisa cherez kotorij proshel konnekt.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 20.02.2003, 07:21     # 7
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
так так он может и прокси выдать - нужет тот короче который как сервер работать может(интернет)
__________________
Lord Skill вне форума  
Старый 21.02.2003, 12:10     # 8
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
S kakih fuev on proxy widast? Ya ne goworiu o HTTP konnekte cherez WININET.DLL. Ya goworiu o soketnom. Na hudoi konec uzai HTTP s web detectom: http://www.glocksoft.net/cgi-bin/jenv.cgi
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 23.02.2003, 08:51     # 9
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
а нельзя поподробней - о том как это сделать?
__________________
Lord Skill вне форума  
Старый 23.02.2003, 12:12     # 10
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Ya dumaju mojno. Ya VB ne liubly, objasniu na palcah. W inete walyaetsya kucha samplow, kak uzat socketi iz VB - est wrode i portirowannoe API. Twoya zadacha:
1. Sozdat socket().
2. Zapolnie INADDR.
3. Wizwat connect().
4. Prochitat INADDR_LOCAL.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 24.02.2003, 08:25     # 11
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
как я понял на Delphi 6 есть уже встроенная функция для этого - только не совсем понял как ей пользоватся
__________________
Lord Skill вне форума  
Старый 24.02.2003, 09:01     # 12
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Hmm... Tam est objekt dlya etogo (naskolko ya znaju). Tebe eto na kakom yazike nado? Esli Delphi ili C mogu nakatat.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 24.02.2003, 09:17     # 13
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
мне либо Delphi или Visual C++........
Надо так ее запускаешь - и чтоб она зразу показывала IP и Имя компьютера в сети..................если не затруднит - то буду очень признателен
__________________
Lord Skill вне форума  
Старый 24.02.2003, 09:50     # 14
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Imya kompa w seti - eto DNS. Xex. Poprobuem.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 24.02.2003, 10:18     # 15
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Privet. Derji. Ya ispolzowal biblioteki SYNAPSE - lomitsya cherez sockets napryamuju nehotelos.
Вложения
Тип файла: rar getip.rar (511.0 Кбайт, 10 просмотров - Кто скачивал? )
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 25.02.2003, 04:30     # 16
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
Пасибо все работает - только еще о Дэльфи..........как сделать так - если у свойства окна убираешь полоску за которую тоскать окно и кнопки все эти стандартные........то как можно написать такой объект чтоб при Dgar - можно было тоскать окно по экрану?
__________________
Lord Skill вне форума  
Старый 27.02.2003, 03:54     # 17
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Hmm... Tebe ego taskat nado ili w nego faili wtaskiwat (drag & drop)?
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 27.02.2003, 23:34     # 18
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
WinApi походу будет проще всего!...........ну я хочу оформить - все модно - какое лучшие решение будет???
__________________
Lord Skill вне форума  
Старый 28.02.2003, 01:18     # 19
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Malenkaya ikonka wisyaschaya ryadom s chasami i konnektyaschaya servachok, dopustim, raz w 10 minut. Esli na nee mishu nawesti - malenkaya formochka gde-nit w ugolke s twoi IP.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 28.02.2003, 16:32     # 20
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 28.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
helldomain
ну идея не плохая - а крешение для оформления самой формы?
__________________
Lord Skill вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 02:25.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.