(Nasıl) Ekran koruyucunun komut satırından başlamasına kadar geçen zamanı nasıl değiştirebilirim?


10

Başlık istediği gibi (Windows 7). (Nasıl) Ekran koruyucunun komut satırından başlamasına kadar geçen zamanı nasıl değiştirebilirim? Hatta mümkün mü?

Normalde 5 dakikalık bir ayardan memnunum, ancak bazen daha uzun yapmak istiyorum. Kısayol tuşlarına bağlı iki uzunluğu istiyorum (bunu nasıl yapacağımı biliyorum).

Sanırım iki makro kaydedebilir ve bunları kullanabilirim, ancak Windows'a X dakika hareketsiz kaldıktan sonra ekran koruyucuyu başlatmasını söylemek için kullanabileceğim herhangi bir komut satırı seçeneği (kayıt defteri güncellemeleri dahil) olup olmadığını merak ettim.

(lütfen ekran koruyucuyu hemen başlatmak istemiyorum; Windows'un başlatmadan önce bekleyeceği süreyi değiştirmek istiyorum)

Şimdiden teşekkürler.


[Cevap] Sonunda @Gjordis'in cevabında bir varyasyon kullandım - ama tüm kredi ona gidiyor.

Neden 3 işleme ihtiyacımız olduğunu görmedim: ekleme, silme, yeniden adlandırma ve bunu ikiye düşürme

Bir kısayol tuşuna bağlanmak istediğim için, birinde iki komuta yürütmem gerekiyor. Normalde, komutları noktalı virgülle ayırabilir ve bir satıra (ör. dir c:;dir d:) Verebilir . Bu regkomutla ilgili hatalar verdi , bu yüzden sonunda iki toplu iş dosyam var. Kontenler özdeştir, sadece süre değişir.

Garip bir şey - değer kayıt defterine doğru yazılır, ancak Denetim Masası / Kişiselleştir / Ekran koruyucu her zaman GUI'sini güncellemez. Ancak, test ettim ve ekran koruyucu beklendiği gibi davranıyor.

@echo off
reg delete "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /f
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 180 /f

Bu size yardımcı olursa, lütfen soruyu onaylayın ;-)

Yanıtlar:


7
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 600 /f

600 değeri saniye cinsinden, = 10 dakika İlginçtir, işaret ettiği gibi, bu sadece ilk kez çalışır. Bir sonraki değişiklikte, bunun gibi yeni bir anahtar oluşturmanız gerekir:

reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOutTemp /t REG_SZ /d 300 /f

Sonra eskisini silin

reg delete "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 600 /f

Ardından yenisini doğru ada kopyalayın

reg copy "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOutTemp "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut

Hopy bu çalışır ve bilgisayarınızı destory değil, ama bu kayıt defteri değeri yoktu, bu silme o korkunç olabilir sanmıyorum.

REG belgeleri burada: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/reg.mspx?mfr=true


Bu işe yarar :-) Sadece ilk kez :-( muhtemelen ilk kez bir kayıt defteri girdisi yoktu, bu yüzden ekleyebilir, ancak daha sonra değiştirmek gerekebilir?
Denemek

1
Umarım başka zamanlarda da çalışmak için düzenlenmiştir
Gjordis

+1 Peki, bu bir trange. Kayıt defteri anahtarını güncellediğini görebiliyorum, ancak masaüstünü sağ tıklattığımda (veya kontrol panelinden geçip) ve "peronalize" i seçtiğimde, hala GUI'de 5 nane gösteriyor. Kayıt defteri aracılığıyla 10 saniye ayarlarsam, ekran koruyucu 10 saniye (hatta birkaç dakika) sonra başlamaz. GUI'de 1 dakika ayarlarsam 1 dakika sonra başlar (ve kayıt defterini doğru şekilde günceller).
Mawg, Monica

Belki de geçerli bir değeri vardır
aralık

+1 Cevabınızda bir varyasyon kullandım ve yukarıdaki qustion'a gönderdim. Yardımınız için teşekkürler
Mawg, Monica

1

Aslında, bu yaklaşım (kayıt defteri aracılığıyla) yeniden başlatılıncaya kadar çalışmaz . Sadece yolu bunu yapmadan PC yeniden başlatma bir API kullanmaktır:

https://www.pcreview.co.uk/threads/utility-to-temporarily-change-the-screensaver.2321339/#post-7442568

ancak API'ler bir komut satırından, yani VB komut dosyasından kullanılamaz. İşte nedeni:

http://forums.codeguru.com/showthread.php?31534-VBScript-and-API&p=86696#post86696

SetScrTimeout.exe (ilk bağlantıdan) yardımcı programı çağrılarak yapılabilir , ancak ne yazık ki, bu küçük yardımcı program artık internette mevcut değil.


Bunun için teşekkürler. Belki SetScrTimeout.exe geri dönüş makinesinde bulunabilir ? Şirket güvenlik duvarı nedeniyle kontrol edemiyorum, ama orada olmalı - her şey ;-)
Mawg Monica

1
Hatta ftp sunucularında denedim, ama sonuç yok. Bu amaç için bir VB kaynak kodu buldum ( freevbcode.com/ShowCode.asp?ID=504 ), ancak bir exe yapmak ve paylaşmak mümkün değil.
Aleksandar

VB'nin hangi versiyonunun (VN 6'yı tahmin ediyorum) herhangi bir fikri var mı?
Mawg, Monica'nın

1
Evet, VB6. Geç yanıtım için özür dilerim.
Aleksandar
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.