굿

로컬 IP 가지고 오기

· 2011-03-17 (목) 11:49:34 · 2742
Option Explicit
'=========// IP 주소 가져오기 //==========================================================
Public Const ERROR_SUCCESS As Long = 0
Public Const MAX_ADAPTER_NAME_LENGTH As Long = 256
Public Const MAX_ADAPTER_DESCRipTION_LENGTH As Long = 128
Public Const MAX_ADAPTER_ADDRESS_LENGTH As Long = 8


Public Type ip_ADDRESS_STRING
ipAddr(0 To 15) As Byte
End Type


Public Type ip_MASK_STRING
ipMask(0 To 15) As Byte
End Type



Public Type ip_ADDR_STRING
dwNext As Long
ipAddress As ip_ADDRESS_STRING
ipMask As ip_MASK_STRING
dwContext As Long
End Type


Public Type ip_ADAPTER_INFO
dwNext As Long
ComboIndex As Long 'reserved
sAdapterName(0 To (MAX_ADAPTER_NAME_LENGTH + 3)) As Byte
sDescription(0 To (MAX_ADAPTER_DESCRipTION_LENGTH + 3)) As Byte
dwAddressLength As Long
sipAddress(0 To (MAX_ADAPTER_ADDRESS_LENGTH - 1)) As Byte
dwIndex As Long
uType As Long
uDhcpEnabled As Long
CurrentipAddress As Long
ipAddressList As ip_ADDR_STRING
GatewayList As ip_ADDR_STRING
DhcpServer As ip_ADDR_STRING
bHaveWins As Long
PrimaryWinsServer As ip_ADDR_STRING
SecondaryWinsServer As ip_ADDR_STRING
LeaseObtained As Long
LeaseExpires As Long
End Type


Public Declare Function GetAdaptersInfo Lib "iphlpapi.dll" _
(pTcpTable As Any, _
pdwSize As Long) As Long


Public Declare Sub CopyMemory Lib "kernel32" _
Alias "RtlMoveMemory" _
(dst As Any, _
src As Any, _
ByVal bcount As Long)


Public Declare Function DeleteUrlCacheEntry Lib "Wininet.dll" _
Alias "DeleteUrlCacheEntryA" _
(ByVal lpszUrlName As String) As Long


Public Declare Function lstrlenW Lib "kernel32" _
(ByVal lpString As Long) As Long



Public Function LocalipAddress() As String

On Error Resume Next

Dim cbRequired As Long
Dim buff() As Byte
Dim ptr1 As Long
Dim sipAddr As String
Dim Adapter As ip_ADAPTER_INFO

LocalipAddress = ""

Call GetAdaptersInfo(ByVal 0&, cbRequired)

If cbRequired > 0 Then
ReDim buff(0 To cbRequired - 1) As Byte
If GetAdaptersInfo(buff(0), cbRequired) = ERROR_SUCCESS Then
ptr1 = VarPtr(buff(0))
Do While (ptr1 <> 0)
CopyMemory Adapter, ByVal ptr1, LenB(Adapter)
With Adapter
sipAddr = TrimNull(StrConv(.ipAddressList.ipAddress.ipAddr, vbUnicode))
If Len(sipAddr) > 0 Then Exit Do
ptr1 = .dwNext
End With 'With Adapter
Loop 'Do While (ptr1 <> 0
End If 'If GetAdaptersInfo
End If 'If cbRequired > 0

LocalipAddress = sipAddr

End Function

Public Function TrimNull(startstr As String) As String

TrimNull = Left$(startstr, lstrlenW(StrPtr(startstr)))

End Function<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:46:12 기타에서 이동 됨]</div>
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
11-04-10 조회 3,549
11-04-08 조회 3,277
11-04-06 조회 3,059
11-04-05 조회 2,561
11-04-05 조회 3,068
11-04-04 조회 2,977
11-04-03 조회 2,695
11-04-02 조회 2,362
11-04-02 조회 4,089
11-04-02 조회 3,468
11-04-02 조회 2,811
11-04-01 조회 3,527
11-04-01 조회 2,320
11-04-01 조회 2,466
11-04-01 조회 3,064
11-04-01 조회 3,363
11-03-31 조회 2,809
11-03-30 조회 2,441
11-03-27 조회 2,670
11-03-27 조회 2,561
11-03-27 조회 3,454
11-03-27 조회 3,649
11-03-26 조회 3,464
11-03-25 조회 2,538
11-03-25 조회 3,093
11-03-25 조회 3,151
11-03-25 조회 3,236
11-03-24 조회 5,115
11-03-23 조회 2,550
11-03-23 조회 3,561
11-03-23 조회 2,410
11-03-22 조회 2,515
11-03-22 조회 2,319
11-03-21 조회 2,772
11-03-20 조회 3,230
11-03-20 조회 2,746
11-03-19 조회 2,592
11-03-18 조회 2,234
11-03-18 조회 3,271
11-03-18 조회 2,782
11-03-18 조회 2,467
11-03-17 조회 3,782
11-03-17 조회 2,847
11-03-17 조회 2,743
11-03-17 조회 2,279
11-03-17 조회 3,174
11-03-15 조회 4,125
11-03-15 조회 2,528
11-03-14 조회 1,974
11-03-14 조회 3,583
11-03-14 조회 3,375
11-03-14 조회 2,169
11-03-13 조회 2,750
11-03-13 조회 3,086
11-03-12 조회 2,742
11-03-12 조회 2,125
11-03-12 조회 2,104
11-03-11 조회 2,510
11-03-11 조회 2,812
11-03-11 조회 2,610
11-03-10 조회 2,321
11-03-10 조회 2,693
11-03-10 조회 2,549
11-03-10 조회 2,855
11-03-10 조회 2,320
11-03-10 조회 2,569
11-03-09 조회 2,350
11-03-09 조회 2,763
11-03-09 조회 2,111
11-03-09 조회 3,576
11-03-09 조회 2,797
11-03-09 조회 4,399
11-03-08 조회 2,822
11-03-08 조회 2,475
11-03-08 조회 2,554
11-03-08 조회 2,509
11-03-08 조회 1,994
11-03-08 조회 2,325
11-03-07 조회 2,346
11-03-07 조회 3,738
11-03-05 조회 2,429
11-03-05 조회 4,913
11-03-04 조회 2,218
11-03-04 조회 2,057
11-03-04 조회 2,174
11-03-04 조회 3,180
11-03-04 조회 2,863
11-03-04 조회 2,579
11-03-04 조회 2,613
11-03-04 조회 2,569
11-03-04 조회 2,674
11-03-04 조회 2,267
11-03-03 조회 1,868
11-03-03 조회 2,378
11-03-03 조회 3,580
11-03-03 조회 2,903
11-03-03 조회 3,268
11-03-03 조회 2,274
11-03-03 조회 2,741
11-03-03 조회 2,975