PDA

View Full Version : بدست اوردن ای پی حقیقی سیستم



rabenhod55
جمعه 04 اردیبهشت 1388, 11:04 صبح
سلام
من با روشهای گوناگون تونستم ای پی سیستم را در داخل ویژوال بیسیک بگیرم اما دیدم ای پی اصلی نیست
وقتی که سایت http://www.whatismyip.com/ میرید ای پی حقیقی را بالاش مینیویسه میخواستم همین کار در ویژوال بیسیک کنم و ای پی حقیقی را داخل یه textbox قرار بدم ممنون میشم از دوستان که بهم اموزش بدن

saeedvir
دوشنبه 28 اردیبهشت 1388, 12:44 عصر
فقط يك تكت باكس و يك دكمه و خاصيت mutiline تكت باكس را true قرار دهيد.
Private Const MAX_IP = 5

Private Type IPINFO

dwAddr As Long ' IP address

dwIndex As Long ' interface index

dwMask As Long ' subnet mask

dwBCastAddr As Long ' broadcast address

dwReasmSize As Long ' assembly size

unused1 As Integer ' not used

unused2 As Integer ' not used

End Type

Private Type MIB_IPADDRTABLE

dEntrys As Long 'number of entries in the table

mIPInfo(MAX_IP) As IPINFO 'array of IP address entries

End Type

Private Type IP_Array

mBuffer As MIB_IPADDRTABLE

BufferLen As Long

End Type

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)

Private Declare Function GetIpAddrTable Lib "IPHlpApi" (pIPAdrTable As Byte, pdwSize As Long, ByVal Sort As Long) As Long

Private Sub Command1_Click()

Dim Ret As Long, Tel As Long

Dim bBytes() As Byte

Dim Listing As MIB_IPADDRTABLE


On Error GoTo END1

GetIpAddrTable ByVal 0&, Ret, True

If Ret <= 0 Then Exit Sub

ReDim bBytes(0 To Ret - 1) As Byte

GetIpAddrTable bBytes(0), Ret, False

CopyMemory Listing.dEntrys, bBytes(0), 4

Form1.Text1 = Listing.dEntrys & " IP addresses found on your PC !!" & vbCrLf

Form1.Text1 = Form1.Text1 & "----------------------------------------" & vbCrLf


For Tel = 0 To Listing.dEntrys - 1

CopyMemory Listing.mIPInfo(Tel), bBytes(4 + (Tel * Len(Listing.mIPInfo(0)))), Len(Listing.mIPInfo(Tel))

Form1.Text1 = Form1.Text1 & "IP address : " & ConvertAddressToString(Listing.mIPInfo(Tel).dwAddr ) & vbCrLf

Form1.Text1 = Form1.Text1 & "IP Subnetmask : " & ConvertAddressToString(Listing.mIPInfo(Tel).dwMask ) & vbCrLf

Form1.Text1 = Form1.Text1 & "BroadCast IP address : " & ConvertAddressToString(Listing.mIPInfo(Tel).dwBCas tAddr) & vbCrLf

Form1.Text1 = Form1.Text1 & "**************************************" & vbCrLf

Next

Exit Sub

END1:

MsgBox "ERROR"

End Sub

Private Function ConvertAddressToString(longAddr As Long) As String

Dim myByte(3) As Byte

Dim Cnt As Long


CopyMemory myByte(0), longAddr, 4

For Cnt = 0 To 3

ConvertAddressToString = ConvertAddressToString + CStr(myByte(Cnt)) + "."

Next Cnt

ConvertAddressToString = Left$(ConvertAddressToString, Len(ConvertAddressToString) - 1)

End Function

reza_mn
دوشنبه 28 اردیبهشت 1388, 15:37 عصر
دوست عزیز saeedvir (http://barnamenevis.org/forum/member.php?u=103361) از زحمتی کشیدی ممنون ولی برای کدها از تگ مربوط به کد تو ادیتور استفاده کنید فهم کدها بهتر میشه

a_mohammadi_m
پنج شنبه 21 خرداد 1388, 21:26 عصر
با سلام
IP مد نظر شما مربوط به سرور ارتباطي كامپيوترهاي شبكه شما با بيرون هست
فقط يك كامپيوتر در شبكه شما داراي IP مورد نظر هست كه در واقع Gateway يا دروازه شبكه به بيرون هست
كامپيوتر شما با يك تكنيك ( معمولا NAT ) مي تونه از اطريق اون با بيرون ارتباط برقرار كنه

civilm
یک شنبه 28 تیر 1388, 23:18 عصر
آیا راهی برای پیدا کردن ip فرد روی اینترنت هست؟