굿

로컬 IP 가지고 오기

· 2011-03-17 (목) 11:49:34 · 2787
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,578
11-04-08 조회 3,334
11-04-06 조회 3,093
11-04-05 조회 2,600
11-04-05 조회 3,104
11-04-04 조회 3,012
11-04-03 조회 2,731
11-04-02 조회 2,391
11-04-02 조회 4,116
11-04-02 조회 3,498
11-04-02 조회 2,853
11-04-01 조회 3,561
11-04-01 조회 2,349
11-04-01 조회 2,497
11-04-01 조회 3,094
11-04-01 조회 3,396
11-03-31 조회 2,847
11-03-30 조회 2,478
11-03-27 조회 2,698
11-03-27 조회 2,578
11-03-27 조회 3,470
11-03-27 조회 3,664
11-03-26 조회 3,495
11-03-25 조회 2,569
11-03-25 조회 3,123
11-03-25 조회 3,173
11-03-25 조회 3,260
11-03-24 조회 5,134
11-03-23 조회 2,565
11-03-23 조회 3,582
11-03-23 조회 2,433
11-03-22 조회 2,539
11-03-22 조회 2,346
11-03-21 조회 2,813
11-03-20 조회 3,274
11-03-20 조회 2,783
11-03-19 조회 2,635
11-03-18 조회 2,279
11-03-18 조회 3,311
11-03-18 조회 2,816
11-03-18 조회 2,511
11-03-17 조회 3,822
11-03-17 조회 2,879
11-03-17 조회 2,788
11-03-17 조회 2,320
11-03-17 조회 3,206
11-03-15 조회 4,156
11-03-15 조회 2,543
11-03-14 조회 1,989
11-03-14 조회 3,591
11-03-14 조회 3,382
11-03-14 조회 2,178
11-03-13 조회 2,758
11-03-13 조회 3,103
11-03-12 조회 2,761
11-03-12 조회 2,138
11-03-12 조회 2,120
11-03-11 조회 2,536
11-03-11 조회 2,836
11-03-11 조회 2,642
11-03-10 조회 2,354
11-03-10 조회 2,719
11-03-10 조회 2,567
11-03-10 조회 2,884
11-03-10 조회 2,358
11-03-10 조회 2,595
11-03-09 조회 2,369
11-03-09 조회 2,778
11-03-09 조회 2,126
11-03-09 조회 3,590
11-03-09 조회 2,813
11-03-09 조회 4,447
11-03-08 조회 2,842
11-03-08 조회 2,487
11-03-08 조회 2,561
11-03-08 조회 2,518
11-03-08 조회 2,002
11-03-08 조회 2,365
11-03-07 조회 2,366
11-03-07 조회 3,765
11-03-05 조회 2,452
11-03-05 조회 4,940
11-03-04 조회 2,233
11-03-04 조회 2,074
11-03-04 조회 2,186
11-03-04 조회 3,199
11-03-04 조회 2,872
11-03-04 조회 2,588
11-03-04 조회 2,619
11-03-04 조회 2,575
11-03-04 조회 2,678
11-03-04 조회 2,275
11-03-03 조회 1,878
11-03-03 조회 2,396
11-03-03 조회 3,611
11-03-03 조회 2,933
11-03-03 조회 3,293
11-03-03 조회 2,284
11-03-03 조회 2,751
11-03-03 조회 2,992