تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] اريد شرح الكود او توضيح الفكرة العامة له
#1
السلام عليكم ورحمة الله وبركاته
اريد حد يشرحلى الكود ده او يوضح الفكرة العامة له


كود :
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox(GetFastestNISTDate().ToLocalTime)
    End Sub

    Public Function GetFastestNISTDate() As DateTime
        Dim result = DateTime.MinValue
        ' Initialize the list of NIST time servers
        ' http://tf.nist.gov/tf-cgi/servers.cgi
        Dim servers As String() = New String() _
        {"nist1-ny.ustiming.org", "nist1-nj.ustiming.org", "nist1-pa.ustiming.org", "time-a.nist.gov", "time-b.nist.gov", "nist1.aol-va.symmetricom.com", _
         "nist1.columbiacountyga.gov", "nist1-chi.ustiming.org", "nist.expertsmi.com", "nist.netservicesgroup.com"}

        ' Try 5 servers in random order to spread the load
        Dim rnd As New Random()
        For Each server As String In servers.OrderBy(Function(s) rnd.NextDouble()).Take(5)
            Try
                ' Connect to the server (at port 13) and get the response
                Dim serverResponse As String = String.Empty
                Using reader = New IO.StreamReader(New System.Net.Sockets.TcpClient(server, 13).GetStream())
                    serverResponse = reader.ReadToEnd()
                End Using

                ' If a response was received
                If Not String.IsNullOrEmpty(serverResponse) Then
                    ' Split the response string ("55596 11-02-14 13:54:11 00 0 0 478.1 UTC(NIST) *")
                    Dim tokens As String() = serverResponse.Split(" "c)

                    ' Check the number of tokens
                    If tokens.Length >= 6 Then
                        ' Check the health status
                        Dim health As String = tokens(5)
                        If health = "0" Then
                            ' Get date and time parts from the server response
                            Dim dateParts As String() = tokens(1).Split("-"c)
                            Dim timeParts As String() = tokens(2).Split(":"c)

                            ' Create a DateTime instance
                            Dim utcDateTime As New DateTime(Convert.ToInt32(dateParts(0)) + 2000, Convert.ToInt32(dateParts(1)), Convert.ToInt32(dateParts(2)), Convert.ToInt32(timeParts(0)), Convert.ToInt32(timeParts(1)), Convert.ToInt32(timeParts(2)))

                            ' Convert received (UTC) DateTime value to the local timezone
                            result = utcDateTime '.ToLocalTime()

                            ' Response successfully received; exit the loop

                            Return result
                        End If

                    End If

                End If
                ' Ignore exception and try the next server
            Catch
            End Try
        Next
        Return result
    End Function

End Class
الرد }}}}
تم الشكر بواسطة: hoob computer
#2
سلام عليكم Big Grin
تم تعديل الموضوع لكي تظهر الاكواد بشكل أجمل Blush

كل عام وانت بخير
اللَّهُمَّ أَنْتَ رَبِّي ، لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ ، وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ ، أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ ، أَبوءُ لَكَ بِنِعْمتِكَ علَيَ ، وأَبُوءُ بذَنْبي فَاغْفِرْ لي ، فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ .
الرد }}}}
تم الشكر بواسطة: ali.alfoly
#3
السلام عليكم ورحمة الله وبركاته


هذا كود معرفة الوقت والتاريخ من مواقع لديها خدمة توفير التوقيت لمن يستعلم عنها.

يعتمد الكود على مجموعة من 10 سيرفرات يختار منه 5 بشكل عشوائي ويمر عليها بحلقة For فالذي عليه الدور قد أجاب بتنتهي الحلقة فيخرج معيدا لنا النتيجة يتوقيت جرينتش GMT ثم نقوم بوضع ToLocalTime لتحويل النتيجة لفارق التوقيت الخاص بنا.


أرجو أن أكون قد أفدت.


السلام عليكم ورحمة الله وبركاته
 
 
@@@ سامحوني، منقطع نهائياً @@@

 
الرد }}}}
تم الشكر بواسطة: الشاكي لله , sooriaty03 , ali.alfoly , 3booody , hoob computer
#4
السلام عليكم


شرح كل سطر من هذا الكود يحتاج درس كامل

انا بقولك فكرة الكود وعلى اي اساس قام بكتابته

قال صاحب الكود انه اعتمد على موقع http://tf.nist.gov/tf-cgi/servers.cgi

بعد الدخول عليه وجدت هذا السطر ، وهو اللبنة الاساسية لهذا الموضوع

إقتباس :Users of the NIST "DAYTIME" protocol on tcp port 13

يقول لجلب الDateTime قم بالاتصال بأحد السيرفرات حقتهم على البروتوكول Tcp والبورت 13

..

قام صاحبنا بااضافة 10 سيرفرات في الكود (ربما اذا واحد ماعطاه الوقت يستعمل الثاني)

لأن في الموقع مذكورة حالة السيرفر واحيانا يكون Busy فيتأخر الرد (Response)

الرد هو عبارة عن الوقت الي المفروض يعطيك اياه

..

فقام بأخذ 5 سيرفرات عشوائية (لم افهم ليش سوا هالحركة) ليش مااخذ ال10 السيرفرات كاملة

قام بعمل foreach لهذه ال5 السيرفرات .. لو فشل احدهم في الرد ستأخذ foreach السيرفر الي بعده

هذا الكود الرئيسي لجلب الوقت من السيرفر
PHP كود :
' Connect to the server (at port 13) and get the response
                Dim serverResponse As String = String.Empty
                Using reader = New IO.StreamReader(New System.Net.Sockets.TcpClient(server, 13).GetStream())
                    serverResponse = reader.ReadToEnd()
                End Using 

الان شوف الكود الي فوق وقارنه بالكلام المكتوب في الموقع

إقتباس :Users of the NIST "DAYTIME" protocol on tcp port 13


مثل ماتشوف .. صاحبنا طبق الكلام اعلاه في الكود اعلاه

--

بقية الكود اعتقد واضح جدا .. قام ببعض العمليات على ال(Response) الذي قام الموقع

بإعطاه اياه في الكود اعلاه ،، وانت محترف في التعامل مع النصوص . فاعتقد ان الموضوع

مفهوم .

--

في النهاية قام بتحويل الوقت ليتناسب مع منطقتك

PHP كود :
utcDateTime.ToLocalTime 

وهكذا ستحصل على التوقيت المناسب والصحيح



فعلا كود رائع Cool


(18-10-13, 08:25 PM)@@أبورائد@@ كتب : السلام عليكم ورحمة الله وبركاته


هذا كود معرفة الوقت والتاريخ من مواقع لديها خدمة توفير التوقيت لمن يستعلم عنها.

يعتمد الكود على مجموعة من 10 سيرفرات يختار منه 5 بشكل عشوائي ويمر عليها بحلقة For فالذي عليه الدور قد أجاب بتنتهي الحلقة فيخرج معيدا لنا النتيجة يتوقيت جرينتش GMT ثم نقوم بوضع ToLocalTime لتحويل النتيجة لفارق التوقيت الخاص بنا.


أرجو أن أكون قد أفدت.


السلام عليكم ورحمة الله وبركاته


اسف اخي ابو رائد ماشفت ردك
الرد }}}}
#5
(18-10-13, 04:13 PM)Omar Mekkawy كتب : سلام عليكم Big Grin
تم تعديل الموضوع لكي تظهر الاكواد بشكل أجمل Blush

كل عام وانت بخير

وعليكم السلام ورحمة الله
جزاك الله خيرا

(18-10-13, 08:25 PM)@@أبورائد@@ كتب : السلام عليكم ورحمة الله وبركاته


هذا كود معرفة الوقت والتاريخ من مواقع لديها خدمة توفير التوقيت لمن يستعلم عنها.

يعتمد الكود على مجموعة من 10 سيرفرات يختار منه 5 بشكل عشوائي ويمر عليها بحلقة For فالذي عليه الدور قد أجاب بتنتهي الحلقة فيخرج معيدا لنا النتيجة يتوقيت جرينتش GMT ثم نقوم بوضع ToLocalTime لتحويل النتيجة لفارق التوقيت الخاص بنا.


أرجو أن أكون قد أفدت.


السلام عليكم ورحمة الله وبركاته


وعليكم السلام ورحمة الله
جزاك الله خيرا اخى الحبيب ابو رائد
اسئل الله ان يحفظك ويبارك فيك


(18-10-13, 08:29 PM)الشاكي لله كتب :
السلام عليكم


شرح كل سطر من هذا الكود يحتاج درس كامل

انا بقولك فكرة الكود وعلى اي اساس قام بكتابته

قال صاحب الكود انه اعتمد على موقع http://tf.nist.gov/tf-cgi/servers.cgi

بعد الدخول عليه وجدت هذا السطر ، وهو اللبنة الاساسية لهذا الموضوع

إقتباس :Users of the NIST "DAYTIME" protocol on tcp port 13

يقول لجلب الDateTime قم بالاتصال بأحد السيرفرات حقتهم على البروتوكول Tcp والبورت 13

..

قام صاحبنا بااضافة 10 سيرفرات في الكود (ربما اذا واحد ماعطاه الوقت يستعمل الثاني)

لأن في الموقع مذكورة حالة السيرفر واحيانا يكون Busy فيتأخر الرد (Response)

الرد هو عبارة عن الوقت الي المفروض يعطيك اياه

..

فقام بأخذ 5 سيرفرات عشوائية (لم افهم ليش سوا هالحركة) ليش مااخذ ال10 السيرفرات كاملة

قام بعمل foreach لهذه ال5 السيرفرات .. لو فشل احدهم في الرد ستأخذ foreach السيرفر الي بعده

هذا الكود الرئيسي لجلب الوقت من السيرفر
PHP كود :
' Connect to the server (at port 13) and get the response
                Dim serverResponse As String = String.Empty
                Using reader = New IO.StreamReader(New System.Net.Sockets.TcpClient(server, 13).GetStream())
                    serverResponse = reader.ReadToEnd()
                End Using 

الان شوف الكود الي فوق وقارنه بالكلام المكتوب في الموقع

إقتباس :Users of the NIST "DAYTIME" protocol on tcp port 13


مثل ماتشوف .. صاحبنا طبق الكلام اعلاه في الكود اعلاه

--

بقية الكود اعتقد واضح جدا .. قام ببعض العمليات على ال(Response) الذي قام الموقع

بإعطاه اياه في الكود اعلاه ،، وانت محترف في التعامل مع النصوص . فاعتقد ان الموضوع

مفهوم .

--

في النهاية قام بتحويل الوقت ليتناسب مع منطقتك

PHP كود :
utcDateTime.ToLocalTime 

وهكذا ستحصل على التوقيت المناسب والصحيح



فعلا كود رائع Cool


(18-10-13, 08:25 PM)@@أبورائد@@ كتب : السلام عليكم ورحمة الله وبركاته


هذا كود معرفة الوقت والتاريخ من مواقع لديها خدمة توفير التوقيت لمن يستعلم عنها.

يعتمد الكود على مجموعة من 10 سيرفرات يختار منه 5 بشكل عشوائي ويمر عليها بحلقة For فالذي عليه الدور قد أجاب بتنتهي الحلقة فيخرج معيدا لنا النتيجة يتوقيت جرينتش GMT ثم نقوم بوضع ToLocalTime لتحويل النتيجة لفارق التوقيت الخاص بنا.


أرجو أن أكون قد أفدت.


السلام عليكم ورحمة الله وبركاته


اسف اخي ابو رائد ماشفت ردك

جزاك الله خيرا أخي وحبيبي الشاكي لله
أسئل الله تعالى أن يجزيك خيرا
ويجمعنا فى جنات النعيم
شرح وافى كافي فعلا أبدعت يا بطل
الرد }}}}
تم الشكر بواسطة: الشاكي لله
#6
شرح رائع ... بارك الله فيكم....

و الكود رائع أيضاً Smile



تحياتي
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  حل مشكلة الكود الاتي - سهل- CLARO 3 75 02-12-16, 04:06 PM
آخر رد: ali.alfoly
  ما هو الخطاء فى هذا الكود "كود التعديل" السيد الجوهري 1 62 26-11-16, 03:22 AM
آخر رد: أبو عمر
  [VB.NET] ربط الداتا بيز بالكريستال ريبورت عن طريق الكود thevirus 3 93 22-11-16, 02:38 PM
آخر رد: thevirus
  [VB.NET] طلب تعديل ع الكود ليصبح البرنامج جاهزاً 3asfa~mdmra 8 189 12-11-16, 02:30 AM
آخر رد: 3asfa~mdmra
  [سؤال] هل يمكن عرض عناصر الكومبوبوكس عن طريق الكود ؟؟؟؟؟؟؟؟؟؟؟؟ thevirus 1 96 10-11-16, 06:25 PM
آخر رد: أبو عمر
  اريد post لي جهاز ubnt .... خبراء sharo.azad 1 59 05-11-16, 06:58 PM
آخر رد: sharo.azad
  [VB.NET] اريد إضافة صورة للموظف في جدول أخر بنفس قاعدة البيانات أبووسم 8 269 05-11-16, 12:00 PM
آخر رد: Adrees
  اريد مساعدة في التعامل مع هذا الموقع بالفيجوال بيسك soper 2 81 03-11-16, 07:08 PM
آخر رد: soper
  كيف اضيف هذا الكود في module nabil.1710 6 122 01-11-16, 03:23 PM
آخر رد: silverlight
  اريد اجعل برنامجي يقبل اي نت فيرم ورك thevirus 2 112 31-10-16, 09:24 AM
آخر رد: thevirus

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم