it-swarm.asia

ما هو الأمر الذي يجب استخدامه لوضع جهاز الكمبيوتر الخاص بك في وضع السكون (وليس وضع السبات)؟

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

يتم إعداد زر الطاقة الموجود على الكمبيوتر الشخصي على أن ينام جهاز الكمبيوتر (ولكنه في وضع الهبوط على الأرض وأنا كسول جدًا حتى لا أستطيع الوصول إلى أسفل) فهو بالضبط ما أريده (ينام باستخدام الوضع المختلط في حالة فقد الطاقة)

يعمل أمر النوم في قائمة إيقاف التشغيل أيضًا.

معظم المعلومات التي وجدتها تقول للاستخدام ؛

%windir%\system32\rundll32.exe PowrProf.dll, SetSuspendState 0,1,0

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

ما الأمر الذي يجب استخدامه لوضع جهاز الكمبيوتر الخاص بك في وضع السكون (وليس وضع السبات)؟

63
Eric L

لقد وجدت حلا. قمت بتثبيت برنامج مجاني يسمى AutoHotKey وسجلت خطوات استدعاء قائمة ابدأ -> السكون في ملف البرنامج النصي. ثم امتثلت ملف البرنامج النصي في ملف قابل للتنفيذ قائم بذاته SleepWin7.exe.

الآن يمكنني ببساطة تشغيل SleepWin7.exe لوضع جهاز الكمبيوتر الخاص بي في وضع السكون المختلط.

يمكنك إلغاء تثبيت AutoHotKey إذا كان هذا هو كل ما تحتاج إليه.


التحديث: لا يعمل الحل أعلاه عندما لا يقوم المستخدم بتسجيل الدخول ، أي شاشة تسجيل الدخول إلى Windows 7. (يستيقظ جهاز الكمبيوتر الخاص بي في الساعة 4 صباحًا كل يوم أحدًا لإجراء نسخ احتياطي أسبوعي ، والذي يتم دون تسجيل دخول المستخدم.) في هذه الحالة ، لا يزال Wizmo البرنامج يعمل:

wizmo.exe وضع الاستعداد الهادئ!

13
Andy Lee

آمل أن تجد هذه مفيدة.

الاغلاق %windir%\System32\shutdown.exe -s

إعادة التشغيل %windir%\System32\shutdown.exe -r

تسجيل الخروج %windir%\System32\shutdown.exe -l

الاستعداد %windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Standby

السبات %windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Hibernate

تحذير: لا يجب استخدام rundll32.exe لتشغيل powerprof.dll . بدلاً من ذلك ، يجب عليك الاتصال بـ SetSuspendState مباشرة. يمكن القيام بذلك باستخدام Powershell - إنشاء ملف على سبيل المثال sleep.ps1 ، مع محتويات أدناه.

Add-Type -Assembly System.Windows.Forms
[System.Windows.Forms.Application]::SetSuspendState("Suspend", $false, $true)

ثم قم بتشغيله باستخدام powershell -File C:\your-path\sleep.ps1. قد تحتاج أولاً إلى تشغيل الأمر Set-ExecutionPolicy RemoteSigned لتمكين تشغيل البرامج النصية powerhell.

يؤدي البرنامج النصي أعلاه إلى تعليق النظام ، والذي سينام أو يسبت حسب إعداد السبات الحالي. لتغيير هذا الإعداد من سطر الأوامر ، قم بتشغيل powercfg -h off (أو on) من سطر الأوامر كمسؤول.

72
imoatama

انظر الأداة المجانية لـ Wizmo ، والتي يمكنها القيام بأشياء كثيرة جدًا.
الأمر الذي تبحث عنه هو على الأرجح:

الاستعداد الاستعداد

15
harrymc

يمكنك إنشاء ملف بالملحق .ps1 (powershell) مثل "sleep.ps1" وكتابة هذا:

Add-Type -Assembly System.Windows.Forms
[System.Windows.Forms.Application]::SetSuspendState("Suspend", $false, $true)

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

$minutes = read-Host "Enter minutes to wait until sleep";
$secs= 60*$minutes;
Start-sleep -s $secs

Add-Type -Assembly System.Windows.Forms
[System.Windows.Forms.Application]::SetSuspendState("Suspend", $false, $true)

والآن عندما أقوم بتشغيله ، أدخل فقط الدقائق التي أريد الانتظار حتى النوم.

يمكنك تشغيل هذا من خط cmd بالكتابة

powershell -File C:\your-path\sleep.ps1

إذا لم تقم بتشغيل برنامج PowerShell النصي من قبل ، فستحتاج إلى التشغيل أولاً

Set-ExecutionPolicy RemoteSigned

في PowerShell لتمكين تشغيل البرنامج النصي. هذا فقط ليتم تشغيلها مرة واحدة.

14
Artur Carvalho

مع تنزيل Sysinternals PsTools [ تنزيل ]:

psshutdown -d

باستخدام أداة سطر الأوامر PsShutdown .

(قد تفضل هذا الحل إذا كنت قد قمت بالفعل بتنزيل PsTools ، فهو يستخدم على نطاق واسع. بخلاف ذلك ، فإن هذا الأسلوب يعادل استخدام wizmoquiet standby.)

المصدر: https://superuser.com/a/331545/21887

11
Aaron Thoma

لقد تم استخدام هذه الأداة المساعدة SLEEP.EXE منذ سنوات. إنه يعمل بشكل جيد ، ولا يلزمك تذكر الحجج التي يمكنك تقديمها لوضع الإيقاف المرحلي (شكله الافتراضي هو "السكون").

7
jjlin

لتعطيل وضع السبات تحتاج إلى استخدام

powercfg -h off

الآن ، rundll32 powrprof.dll ، ستضع SetSuspendState محطتك في وضع الاستعداد

[تحرير]

في الواقع لا يمكنني الإعداد للنوم المختلط لأن لدي جهاز كمبيوتر محمول (حالة غير متوفرة في محطات الهاتف المحمول) ، للنوم المختلط تحتاج إلى تمكين وضع الإسبات ويقول البعض إن rundll32 powrprof.dll و SetSuspendState يؤدي إلى النوم الافتراضي وضع في إعدادات لوحة التحكم\إدارة الطاقة. يرجى المحاولة إذا rundll32 powrprof.dll ، و SetSuspendState الهجينة النوم تعطي بعض النتائج.

6
user8228

قم بإنشاء ملف مضرب ، حيث يكون 600 تأخيرًا في ثوانٍ.

ping -n 600 -w 1 127.0.0.1> لا شيء

powercfg -h قبالة

٪ windir٪\System32\rundll32.exe powrprof.dll ، SetSuspendState Standby

5
dim77x

إذا كنت مختصًا في ترجمة برنامج .NET ، فسيتم الأمر التالي

System.Windows.Forms.Application.SetSuspendState(PowerState.Suspend, 
                                                 false,   /* force */
                                                 true     /* disableWake */);

ملاحظة: لا تحتاج إلى تعطيل وضع الإسبات كما هو مطلوب بواسطة الأمر rundll32 powrprof.dll,SetSuspendState. يمكنك أيضًا استخدام PowerState.Hibernate والتي ستقوم بإسبات الجهاز إذا كنت تريد ذلك.

يمكنك بسهولة ترجمة EXE باستخدام هذا الأمر مع أي إصدار من Visual Studio . مجرد إنشاء تطبيق وحدة التحكم وإضافة مرجع إلى DLL System.Windows.Forms.

4
Simon