منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : محتاج كود يجلب رقم IP
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم روحمة الله وبركاته 
محتاج كود يجلب رقم IP  للجهاز المتصل ويظهره في التكست 1
من شبكة LAN محليه 
يعني عندي برنامج لما يتصل ويدخل البرنامج يقرأ IP
PHP كود :
       Public Function GetMyIP() As List(Of IPAddress)

 
           Dim lst As New List(Of IPAddress)(4)
 
           Dim IPs As IPAddress() = Dns.GetHostEntry(Dns.GetHostName).AddressList

            For Each ip 
As IPAddress In IPs
                If IsIPv4
(ip.ToStringThen lst.Add(ip)
 
           Next

            Return lst
        End 
Function


 
       Public Function IsIPv4(ByVal IP As String) As Boolean

            If IP
.Length 15 Then Return False
            If IP
.Contains(":"Then Return False

            Dim s
() As String IP.Split(".")
 
           If Not UBound(s) = 3 Then Return False
            For i 
0 To UBound(s)
 
               If s(i).Length Or s(i).Length 0 Then Return False
                For j 
0 To s(i).Length 1
                    If Not s
(i).Chars(jLike "#" Then Return False
                Next
            Next

            Return True
        End 
Function 

تحتاج إلى إستيراد مكتبة System.Net أولا
ده كمان  كود يقوم بنفس العمليه

استدعيها في حدث الفورم لود

كود :
   Dim my_ip As String = System.Net.Dns.GetHostByName(My.Computer.Name).AddressList(0).ToString()
       TextBox1.Text = my_ip
شكراً لكم وزادكم الله من علمه 
سبحان من جمعكم في رد واحد الأثنين يــما وقفتم معاي والله جميلكم على راسي يا أساتذتي 
ولكن يأشر بالأخضر 
System.Net.Dns.GetHostByName
أستدعيت NamesPase 
system.net
بسييييطةةة

كود :
Dim ip As String = New Net.WebClient().DownloadString("https://wtfismyip.com/text")
        MsgBox(ip)
(21-12-16, 12:27 AM)adel27 كتب : [ -> ]ولكن يأشر بالأخضر 
System.Net.Dns.GetHostByName

السلام عليكم

يؤشر الأخضر ليخبرك أن تستخدم GetHostEntry بدلا من GetHostByName ولكن سيعطيك AddressList(0).ToString بمعلومة غير صحيحة لما تريد
لهذا طريقة التعامل مع GetHostEntry كالتالي
كود :
Dim localIP As String =
    Dns.GetHostEntry(Dns.GetHostName).AddressList.
    Where(Function(x) x.ToString.Split(".").Count = 4).
    FirstOrDefault.ToString

MsgBox(localIP)
جرب الدالة التالية
PHP كود :
Private Function GetIP() As String
        GetIP 
String.Empty
 
       Dim strHostName As String System.Net.Dns.GetHostName()
 
       Dim ip As System.Net.IPHostEntry System.Net.Dns.GetHostEntry(strHostName)

 
       For Each ips As System.Net.IPAddress In ip.AddressList
            If ips
.AddressFamily System.Net.Sockets.AddressFamily.InterNetwork Then
                GetIP 
ips.ToString()
 
           End If
 
       Next

    End 
Function 
اشكرك استاذ ابو ليلى
فقد استفدت من اشارتك الى AddressFamily

فعدلت الكود الذي في مشاركتي ليصبح كالتالي
كود :
Dim localIP As String =
   Dns.GetHostEntry(Dns.GetHostName).AddressList.
   Where(Function(x) x.AddressFamily.Equals(Sockets.AddressFamily.InterNetwork)).
   FirstOrDefault.ToString

MsgBox(localIP)

اشكرك استاذ ابو ليلى
(22-12-16, 09:52 PM)مساعدة كتب : [ -> ]اشكرك استاذ ابو ليلى
فقد استفدت من اشارتك الى AddressFamily

فعدلت الكود الذي في مشاركتي ليصبح كالتالي
كود :
Dim localIP As String =
   Dns.GetHostEntry(Dns.GetHostName).AddressList.
   Where(Function(x) x.AddressFamily.Equals(Sockets.AddressFamily.InterNetwork)).
   FirstOrDefault.ToString

MsgBox(localIP)

اشكرك استاذ ابو ليلى


السلام عليكم 
شكرا لارشادي لطريقة استخراج الاي بي المحلي و التي اثبتت فعلا نجاعتها 
لا يزال امامي عائق و هو الحصول على اسم الكارت الذي تم استخراج الاي بي الخاص به 
فرجاءا ساعدني لأنني لا أطلب المساعدة إلا اذا بحثت و تأكدت 
شكرا مسبقا
جزاكما الله خير
الصفحات : 1 2