منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] ضبط وقت الجهاز من على النت من اجل الحماية - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] ضبط وقت الجهاز من على النت من اجل الحماية (/showthread.php?tid=530)



ضبط وقت الجهاز من على النت من اجل الحماية - ali.alfoly - 13-10-13

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

هل من فكرة عبقرية لهذا


RE: ضبط وقت الجهاز من على النت من اجل الحماية - الشاكي لله - 13-10-13

شوف اخي علي ، عندك خيارين


1- الاعتماد على احد مواقع الساعات واستخلاص الوقت منه (مثل موقع http://www.now-time.com)
2- الاعتماد على نفسك وتصميم خدمة ويب تقوم بجلب الوقت لك ثم رفعها على استضافة (مستحسن)


يعني في الخيار الثاني انت الي راح تسوي سكربت ليقوم بجلب الوقت مباشرة لبرنامجك

ثم تقوم برفع السكربت (او الخدمة) على الاستضافة

فالوقت الذي سيتم جلبه لك هو وقت سيرفر الاستضافة

خدمة الويب التي يجب عليك عملها تكون بهذه الطريقة
PHP كود :
Imports System.Collections.Generic
Imports System
.Linq
Imports System
.Web
Imports System
.Web.Services
Imports System
.Data.SqlClient
Imports System
.Runtime.Remoting.Channels.Http
Imports System
.Runtime.Remoting.Channels

Namespace Vb4arb_Service
    
''' <summary>
    ''' 
Summary description for Service
    
''' </summary>
    ' 
To allow this Web Service to be called from scriptusing ASP.NET AJAXuncomment the following line
    
' [System.Web.Script.Services.ScriptService]
    <WebService([Namespace] := "http://tempuri.org/")> _
    <WebServiceBinding(ConformsTo := WsiProfiles.BasicProfile1_1)> _
    <System.ComponentModel.ToolboxItem(False)> _
    Public Class Service
        Inherits System.Web.Services.WebService

        <WebMethod>
        Public Function GetServerDateTime() As DateTime
            Return DateTime.Now
        End Function

    End Class
End Namespace 


بعدها تقوم بإضافة الخدمة الى مشروعك

عن طريق Add Service References ، ثم تقوم بكتابة رابط الخدمة بعد رفعها الى الاستضافة

تكون بهذا الشكل مثلا :-

إقتباس :http://vb4arbteamviewer.somee.com/Service.asmx

بعد اضافه الخدمة ، يمكنك استدعاء اي دالة منها

الدالة GetServerDateTime الموجودة في الخدمة الي عملتها ، تقوم بجلب وقت سيرفر الاستضافة

فلو قمنا باستدعائها من برنامجنا سنحصل على وقت سيرفر الاستضافةCool

وبما ان السيرفر هو جهاز يعمل دائما (اذن يمكنك الاعتماد عليه لجلب الوقت)

وطريقة استدعاء الدالة كالتالي :-

PHP كود :
Dim service As ServiceReference1.ServiceSoapClient = New WindowsFormsApplication1.ServiceReference1.ServiceSoapClient()
Dim dt As DateTime service.GetServerDateTime()
MessageBox.Show(dt.ToString("HH:mm:ss"))
'الوقت 
يمكننا بعدة حسابات ان نقوم بتحويل وقت السيرفر الى توقيتنا الحالي بمعرفة الفرق


--

شطحة :-

دروس خدمة الويب (WebService) سيتم التطرق لها قريبا في :

{0} - مقدمة عن [سلسلة التحكم]




طبعا كل هذا اذا اردت اتباع الطريقة الثانية وترك الاولى (والخيار لك)
الطريقة الاولى اسهل . لو كنت تفكر فيها خبرني عشان اكتب لك كود يقوم باستخلاص الوقت من الموقع


تحياتي



RE: ضبط وقت الجهاز من على النت من اجل الحماية - ali.alfoly - 13-10-13

جزاك الله خيرا أخي وحبيبي الشاكي لله
هذا المر رائع حقا
لاكن المشكلة عندى ان الاستضافة الخاصة بى لا تدعم vb
من الممكن عمل نفس الفكرة php وانا كتبت طلب فى قسم php هنا فى المنتدى لاكن للاسف مفيش رد
طيب ممكن استخلص التوقيت بهذه الطريقة
http://ketab-zahabey.blogspot.com/2013/03/timegoogle.html
وبصراحة انا اسق فى جوجل


RE: ضبط وقت الجهاز من على النت من اجل الحماية - الشاكي لله - 13-10-13

(13-10-13, 08:00 PM)ali.alfoly كتب : جزاك الله خيرا أخي وحبيبي الشاكي لله
هذا المر رائع حقا
لاكن المشكلة عندى ان الاستضافة الخاصة بى لا تدعم vb
من الممكن عمل نفس الفكرة php وانا كتبت طلب فى قسم php هنا فى المنتدى لاكن للاسف مفيش رد
طيب ممكن استخلص التوقيت بهذه الطريقة
http://ketab-zahabey.blogspot.com/2013/03/timegoogle.html
وبصراحة انا اسق فى جوجل

بما انك تثق في قوقل ...

كما وعدتك ، سأقوم بكتابة الكود حالا



RE: ضبط وقت الجهاز من على النت من اجل الحماية - ali.alfoly - 13-10-13

في الانتظار وجزاك الله خيرا


RE: ضبط وقت الجهاز من على النت من اجل الحماية - الشاكي لله - 13-10-13

تم بحمد الله

--

الكود :-

PHP كود :
Dim rq System.Net.WebRequest.Create("http://www.google.com/search?q=cairo time")
        
Dim rs As New System.IO.StreamReader(rq.GetResponse().GetResponseStream())

        
Dim doc As New HtmlAgilityPack.HtmlDocument()
        
doc.LoadHtml(rs.ReadToEnd())
        
rs.Close()


        
Dim node As HtmlAgilityPack.HtmlNode _
            doc
.DocumentNode.SelectSingleNode("//*[@id='ires']/ol[1]/li[1]/table[1]/tr[2]/td[1]/div[1]/table[1]/tr[1]/td[1]")


        If 
node IsNot Nothing Then
            
' node.ChildNodes(1).InnerText 'عرض الوقت
            
' node.ChildNodes(2).InnerText 'عرض اليوم
            
' node.ChildNodes(5).InnerText 'عرض المدينة

            Label1
.Text node.ChildNodes(1).InnerText " , " _
                node
.ChildNodes(2).InnerText " In " _
                node
.ChildNodes(5).InnerText
        End 
If 



صورة :-





(المثال في المرفقات)



RE: ضبط وقت الجهاز من على النت من اجل الحماية - ali.alfoly - 13-10-13

جزاك الله خيرا وجعلها في موازين حسناتك يوم تلقاه
روعة روعة روعة


RE: ضبط وقت الجهاز من على النت من اجل الحماية - hoob computer - 14-10-13

كعادتك أخي "الشاكي لله" مبدع في مشاركاتك ....


جزاك الله خيراً ....

تحياتي


RE: ضبط وقت الجهاز من على النت من اجل الحماية - مبرمج بلا حدود - 14-10-13

جزاكم الله كل الخير وباك الله فيكم


RE: ضبط وقت الجهاز من على النت من اجل الحماية - @@أبورائد@@ - 14-10-13

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


بارك الله فيكم..


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