TaskSchedule Üzerinde Çalıştırışacal komut : wscript "c:\temp\run_hidden.vbs" "C:\temp\ActivityTracker.ps1"
Bu PowerShell scripti, bir bilgisayarın kullanıcı etkinliğini izler ve belirli bir süre boyunca aktif ve pasif zamanını hesaplar. Script, kullanıcı etkinliğini izlemek için Windows API'sini kullanır ve bir WMI sınıfı aracılığıyla toplanan verileri kaydeder.
$NewClassName
: WMI sınıfının adı.$activeTime
: Aktif zamanı izlemek için kullanılan değişken.$inactiveTime
: Pasif zamanı izlemek için kullanılan değişken.$interval
: Kontrol aralığı (saniye cinsinden).$targetDuration
: Toplam çalışma süresi hedef süresi (saniye cinsinden).$passiveThreshold
: Pasif olarak kabul edilecek aralık (saniye cinsinden).
- Belirtilen ad ve özelliklere sahip bir WMI sınıfı oluşturur.
- Hata, uyarı veya bilgi düzeylerinde loglama yapar.
- Log dosyasının boyutunu kontrol eder ve gerektiğinde yeniden oluşturur.
- Log dosyasına formatlanmış mesajı ekler.
UserInputInfo
sınıfı aracılığıyla kullanıcı etkinliğini izler.- Kullanıcının etkin olup olmadığını belirler.
- Kullanıcının etkin olduğu süreyi ve pasif olduğu süreyi günceller.
- Belirtilen hedef süreye ulaşılana kadar ana döngüde kalır.
- Her döngüde kullanıcı etkinliği güncellenir ve toplam süre hesaplanır.
- Toplam aktif ve pasif süreleri WMI sınıfına kaydeder.
- Kaydedilen verileri WMI sınıfından alır ve gösterir.
Bu script, bilgisayar kullanım izleme ve raporlama gibi senaryolar için kullanılabilir ve uygun bir şekilde yapılandırılarak işletim sistemi kullanımını izlemek için kullanılabilir.