سؤال

كيف يمكنك تعيين المنطقة الزمنية Windows على الجهاز المحلي برمجيا في C# ؟ باستخدام أداة تفاعلية ليس خيارا لأن البعيد الوحدات لا واجهة المستخدم أو المستخدمين.الجهاز البعيد قيد التشغيل .NET 2.0 Windows XP مضمنة محلي التطبيق الذي يتصل مع خادم مركزي (عبر الإنترنت) خدمة الآلي اتجاه مهامها.يمكننا تسليم الأمر إلى التوافق على وقت معين/المنطقة الجمع ، ولكن أي قانون يمكن وضعها في التطبيق لإنجاز التغيير ؟ المعدات ليست تصويرها على مواقع محددة قبل التثبيت ، وذلك من أجل استخدام أي معدات في أي موقع يجب أن تكون قادرا على مزامنة هذه المعلومات.

هل كانت مفيدة؟

المحلول

SetTimeZoneInformation يجب أن تفعل ما عليك.سوف تحتاج إلى استخدام P/الاحتجاج للحصول على ذلك.

ملاحظة أنك سوف تحتاج إلى امتلاك وتمكين SE_TIME_ZONE_NAME امتياز.

نصائح أخرى

هذا لا يعمل في ويندوز 7.لقد حاولت مع البيئة التالية ويندوز 7 VSTS-2008 فمن فتح تغيير المنطقة الزمنية نافذة كما نفعل نحن ذلك يدويا

سانتوش أنت بالتأكيد الصحيح.RunDLL32 shell32.dll,Control_RunDLL %SystemRoot%\system32 IMEDATE.cpl,,/Z %1 هو إهمال لسنوات و لا تعمل على ويندوز 2008, R2, Vista, 7, ...نعم لقد لاحظت أن هذا المنتدى يبدو أن علة كامل مع الاعتراف المفتاح enter.ربما في يوم من الأيام مبرمج سيتم إصلاح هذه المشكلة.

جرب هذا...

أولا, كنت بحاجة إلى العثور في التسجيل ، الرئيسية الذي يمثل المنطقة التي تريد ("التوقيت المركزي" هو مثال على ذلك).تلك الموجودة هنا:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\Current Version ime Zones

حتى مع أخذ ذلك في الاعتبار, إنشاء ملف دفعي "SetTimeZone.الخفافيش" مع السطر التالي في ذلك:

RunDLL32 shell32.dll,Control_RunDLL %SystemRoot%\system32 IMEDATE.cpl,,/Z %1

من C# الاتصال على:

النظام.تشخيص.العملية.تبدأ("SetTimeZone.الخفافيش", "مفتاح المنطقة الزمنية التي تريد تعيين");

سيتم تشغيل مخاطر وجود بيانات غير صحيحة إذا كنت لا تستخدم UTC لنقل التمور...إذا كنت تغيير المناطق الزمنية على الجهاز...أنت التواريخ سوف تكون أكثر.

قد ترغب في استخدام UTC ومن ثم حساب الوقت في كل المنطقة الزمنية.

بدلا من مجرد تحديد المنطقة الزمنية من بعض الأنظمة يجب عليك النظر في استخدام خدمة الوقت في Windows.وليس فقط التعامل مع المنطقة الزمنية.فإنه سيتم أيضا أن تأخذ الرعاية حول تصحيح إعدادات التاريخ و الوقت نفسه.

نلقي نظرة على: كيفية مزامنة الوقت مع خدمة الوقت في Windows في نظام التشغيل Windows XP

حتى لو كنت ذاهب الى جعل كل هذه الإعدادات في ويندوز فيستا أو ويندوز 7 نلقي نظرة على هذا هنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top