كيف يمكنني تشغيل البرنامج النصي تلقائيًا عند تسجيل الدخول إلى Windows؟
أرغب في تشغيل شيء مثل هذا عندما أقوم بتسجيل الدخول إلى جهاز الكمبيوتر الخاص بي:
echo %USERNAME% logged on at %DATE% %TIME% >> log.txt
تتمثل المكافأة في التمكن من تشغيل البرنامج النصي نفسه عندما أقوم بإلغاء قفل شاشة التوقف كذلك.
يمكنك إنشاء مهمة مجدولة يتم تشغيلها عند إلغاء قفل جهاز الكمبيوتر الخاص بك:
أيضا ، قمت بتعديل المسار في البرنامج النصي للقراءة
echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%\log.txt
إذا كان لديك بالفعل برنامج نصي:
لتعيين برنامج نصي لتسجيل الدخول لمستخدم أو مجموعة
أين؟ أدوات النظام/المستخدمون المحليون والمجموعات/المستخدمون
فيما يلي "HowTo" مفيد من Microsoft
إنشاء البرامج النصية لتسجيل الدخول
يمكنك استخدام البرامج النصية لتسجيل الدخول لتعيين المهام التي سيتم تنفيذها عندما يقوم المستخدم بتسجيل الدخول إلى جهاز كمبيوتر معين. تستطيع البرامج النصية تنفيذ أوامر نظام التشغيل وتعيين متغيرات بيئة النظام واستدعاء البرامج النصية الأخرى أو البرامج القابلة للتنفيذ. تدعم عائلة Windows Server 2003 بيئتي برمجة نصية: يعمل معالج الأوامر على تشغيل ملفات تحتوي على أوامر لغة دفعية ، ويقوم Windows Script Host (WSH) بتشغيل ملفات تحتوي على أوامر Microsoft Visual Basic Scripting Edition (VBScript) أو Jscript. يمكنك استخدام محرر نصوص لإنشاء برامج نصية لتسجيل الدخول. تتضمن بعض المهام التي تؤديها عادةً البرامج النصية لتسجيل الدخول:
تقوم بتعيين H: محرك الأقراص إلى الدليل الرئيسي للمستخدم عن طريق استدعاء أسلوب MapNetworkDrive الخاص بكائن WSH Network بالاقتران مع خاصية UserName الخاصة بكائن WSH Network. يستخدم كائن ADSI IADsADSystemInfo للحصول على الاسم المميز للمستخدم الحالي ، والذي بدوره يستخدم للاتصال بكائن المستخدم المقابل في Active Directory. بمجرد إنشاء الاتصال ، يتم استرداد قائمة المجموعات التي يكون المستخدم عضوًا فيها باستخدام سمة memberOf للمستخدم. يتم ربط قائمة أسماء المجموعات متعددة القيم في سلسلة واحدة باستخدام دالة الانضمام الخاصة بـ VBScript لتسهيل البحث عن أسماء المجموعة المستهدفة.
إذا كان المستخدم الحالي عضوًا في إحدى المجموعات الثلاث المحددة في الجزء العلوي من البرنامج النصي ، فسيقوم البرنامج النصي بتعيين G: محرك الأقراص إلى محرك المجموعة المشترك ، وتعيين الطابعة الافتراضية للمستخدم لتكون طابعة المجموعة. لإنشاء مثال لتسجيل الدخول النصي
انسخ والصق ، أو اكتب ما يلي:
Const ENGINEERING_GROUP = "cn=engineering"
Const FINANCE_GROUP = "cn=finance"
Const HUMAN_RESOURCES_GROUP = "cn=human resources"
Set wshNetwork = CreateObject("WScript.Network")
wshNetwork.MapNetworkDrive "h:",
"\\FileServer\Users\" & wshNetwork.UserName
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" &
ADSysInfo.UserName)
strGroups = LCase(Join(CurrentUser.MemberOf))
If InStr(strGroups, ENGINEERING_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Engineering\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\EngLaser"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\Plotter"
wshNetWork.SetDefaultPrinter
"\\PrintServer\EngLaser"
ElseIf InStr(strGroups, FINANCE_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Finance\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\FinLaser"
wshNetWork.SetDefaultPrinter
"\\PrintServer\FinLaser"
ElseIf InStr(strGroups, HUMAN_RESOURCES_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Human Resources\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\HrLaser"
wshNetWork.SetDefaultPrinter
"\\PrintServer\HrLaser"
End If
من القائمة ملف ، انقر فوق "حفظ باسم".
إن أبسط طريقة يمكنني التفكير فيها هي وضع هذا في ملف .bat في مجلد بدء التشغيل.
هناك طريقة أكثر تعقيدًا تتمثل في إضافة الملف الدفعي إلى السجل في
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
مفتاح التسجيل.
لا حاجة! يحتوي Windows بالفعل على آلية لتسجيل هذا من أجلك في سجل الأحداث. معرف الحدث هو 4624 (528 على أنظمة ما قبل فيستا).
أحد يعرف ما إذا كان يمكن استخدام هذا لتشغيل عندما يتم قفل/إلغاء قفل الشاشة كذلك؟
هناك طريقة لنظام التشغيل Windows 7 و/أو Windows Server 2008.
استخدم "جدولة المهام" ، وقم بإنشاء مهمة أساسية جديدة ، حيث يستخدم المشغل "عندما أقوم بتسجيل الدخول".
طريقة بديلة جيدة هي إنشاء ملف دفعي بالأوامر التي تريد تشغيلها فيها. بعد ذلك سوف تحدد في محرر السياسة على الجهاز أنه يقوم بتشغيل برنامج نصي لتسجيل الدخول كجزء من عملية تسجيل الدخول. ملاحظة سريعة هي أن هذا الخيار متاح فقط على XP Pro وليس الإصدار المنزلي.