Kategoriler
Tech

Windows Görev zamanlayıcıda PowerShell

Windows’ta görev zamanlayıcıya bir PowerShell komutu yazdım ve bilgisayar her açıldığında ekran parlaklığının istediğim duruma gelmesini sağladım.

Windows PowerShell nedir konusuna bir miktar değinmiştik: https://wolkanca.com/windows-cmd-komut-gecmisi/, bu sabah laptobumu açtığımda her zaman yaptığım gibi ekran parlaklığını değiştirdim ve klasik yazılımcı kafasıyla düşünerek; bu işi neden sürekli manuel elle ben yapıyorum, otomatikleştireyim kendi yapsın, dedim. Ve yaptım, sizinle de paylaşmak istedim.

Öncelikle ekran parlaklığını değiştirmek için PowerShell komutları şu şekilde:

(Get-WmiObject -Namespace root/WMI -Class WmiMonitorBrightnessMethods).WmiSetBrightness(1,100)

Bu kod içerisinde “(1,100)” kısmı parlaklık seviyesini belirtir, 1,100 ise tam parlaklık (1,0) ise tam karanlık. PowerShell’de deneyebilirsiniz.

Şimdi bu kodu her bilgisayar açılışında çalıştırmak için Görev Zamanlayıcıyı(Task scheduler – taskschd.msc) açıyoruz, Schedule tasks veya Görev Zamanlayıcı şeklinde bulursunuz, ardından paylaştığım ekran görüntüsündeki gibi PowerShell ve komutu yazıp bilgisayarda oturum açıldığında çalışması için zamanlıyoruz, hepsi bu kadar.

Eylem:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command "(Get-WmiObject -Namespace root/WMI -Class WmiMonitorBrightnessMethods).WmiSetBrightness(1,100)"

Bilgisyarda yönetici yetkisine sahip değilseniz veya PowerShell yok ise bunu aynı şekilde CMD ile de yapmanız mümkündür. Burada tabii Windwos’un yüklü olduğu klasör değişebilir, yolu manuel verdiğim için siz C değilse neyse onu yaparsınız ki genelde varsayılan C oluyor.

Görev zamanlayıcıdaki kendi kuralımı XML olarak paylaşıyorum dilerseniz direk içeri aktarabilirsiniz:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2021-05-19T12:46:24.7337616</Date>
    <Author>VOLKAN\wolkanca</Author>
    <Description>Ekran parlaklığı FULL - Başlangıçta (Get-WmiObject -Namespace root/WMI -Class WmiMonitorBrightnessMethods).WmiSetBrightness(1,100)</Description>
    <URI>\Ekran parlaklığı FULL - Başlangıçta</URI>
  </RegistrationInfo>
  <Triggers>
    <LogonTrigger>
      <Enabled>true</Enabled>
    </LogonTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <GroupId>S-1-5-32-544</GroupId>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>true</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1H</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe</Command>
      <Arguments>-Command "(Get-WmiObject -Namespace root/WMI -Class WmiMonitorBrightnessMethods).WmiSetBrightness(1,100)"</Arguments>
    </Exec>
  </Actions>
</Task>

Görev zamanlayıcıda görev oluşturmak oldukça basit, hemen görev oluştur diyip koşulları ve zamanlamayı ayarlayıp çalışacak programı ve varsa program parametrelerini yazıp halledebiliyorsunuz.

Bunu yaptıktan sonra aklıma birçok şeyi otomatikleştirebileceğim geldi ve aslında bilgisayar açılışında Spotify’da bir playlisti random çalmak vs. gibi şeyler yapabilirim. Aslında akıllı ev olayı tam benlik sabahları kahvenin hazır olması, bir şeyleri açmak, kapatmak gibi gibi şeyler hoşuma gidiyor ve aslında minik bazı cihazlara sahibim ancak ülkemizde bu cihazlar oldukça lüks ve sanırım birden fazla maaş almadan bu işi yapamayacağım, aranızda beni danışman olarak işe alıp birden fazla maaş verecek enayi varsa hızlıca iletişin.