تقييم الموضوع :
  • 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 لتحويل النتيجة لفارق التوقيت الخاص بنا.


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


السلام عليكم ورحمة الله وبركاته
الرد }}}}
#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



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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] اريد اعمل برنامج Login x7rBI 10 155 27-03-17, 12:01 AM
آخر رد: x7rBI
  حل مشكلة الكود MOSTAFA.KAMEL 2 88 24-03-17, 11:53 PM
آخر رد: Master Hacker
  [VB.NET] تعديل الكود بخصوص Split 3asfa~mdmra 1 61 20-03-17, 04:34 PM
آخر رد: 3asfa~mdmra
  اريد اخفاء البيانات من الفورم أثناء بداية عمل البرنامج أبووسم 6 126 12-03-17, 03:42 AM
آخر رد: أبووسم
  [VB.NET] اريد منكم افكار لمشروع تخرج (" مراقبة او متابعة مشروع التخرج ") وشكراا" Mohamed_Libya 2 103 11-03-17, 08:21 PM
آخر رد: Mohamed_Libya
  ما هو الكود لجعل اداة numericUpDown1 تتغير تلقائياً لحن الحياة 1 73 09-03-17, 07:19 AM
آخر رد: مساعدة
  تصحيح الكود bidaya 0 74 03-03-17, 03:23 PM
آخر رد: bidaya
  [VB.NET] كيف اوقف تفيذ امر هذا الكود 3asfa~mdmra 0 75 03-03-17, 01:21 PM
آخر رد: 3asfa~mdmra
  [VB.NET] خطأ في الكود ...مرفق مع المشروع....يرجي التعديل فقط 3asfa~mdmra 2 130 02-03-17, 04:26 PM
آخر رد: 3asfa~mdmra
  [سؤال] اريد مثال على طريقة ادراج صورة من السكانر ناصر شير 1 114 28-02-17, 03:36 PM
آخر رد: أبووسم

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


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