להורדה | תוכנת שומר מסך לאוצריא
מדריכים ותוכנות עזר לאוצריא
1
פוסטים
1
כותבים
71
צפיות
2
עוקבים
-
בעקבות הבקשה פה, יצרתי תוכנה קטנה ששומרת על כך שהמסך לא יכבה בעת שימוש באוצריא ובזית.
הנה "נר תמיד" - תוכנה קטנה ממש (GPT ּ ג'מיני), שרצה ברקע ושומרת שבעת עבודה על אוצריא/זית - המסך לא יכבה.
- היא נמצאת במגש, ואפשר בכל רגע נתון לכבות ולסגור אותה משם, או ממנהל המשימות.
בכבוד!

גירסא 2
- התוכנה תומכת גם באוצריא וגם בזית.
- התוכנה מזהה אם אוצריא/זית פתוח ברקע, אם כן - המסך לא נכבה בכלל, אם לא - המסך עובד כרגיל.
- יש אפשרות להפעיל ולכבות את התוכנה, גם בלי לסגור אותה.
- יש אפשרות שהתוכנה תפעל עם עליית המחשב - באופן אוטומטי.
- יש בועת מידע אם התוכנה מופעלת/נכבית - בכדי שתדעו בדיוק מה הסטטוס שלה.
- התוכנה רצה ברקע, ופועלת משורת המשימות.
אשמח להערות!
קוד פאוורשיל - למי שמעניין אותו איך זה עובד:
# 1. הגדרות בסיס וטעינת ספריות גרפיות $ErrorActionPreference = 'SilentlyContinue' [void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") [void][System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") # מניעת הרצה של יותר ממופע אחד של התוכנה if ((Get-Process -Name ([System.Diagnostics.Process]::GetCurrentProcess().Name)).Count -gt 1) { exit } # קישור לפונקציות מערכת של Windows למניעת כיבוי מסך $sig = '[DllImport("kernel32.dll")] public static extern uint SetThreadExecutionState(uint esFlags);' $win32 = Add-Type -MemberDefinition $sig -Name "Win32Sleep" -Namespace "Win32" -PassThru # משתני הגדרה $script:ManualOverride = $true $ExePath = [System.Diagnostics.Process]::GetCurrentProcess().MainModule.FileName $RegPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" $AppName = "NerTamidManager" $FullTitle = "נר תמיד - מניעת כיבוי מסך" # 2. יצירת האייקון בשורת המשימות (System Tray) $notifyIcon = New-Object System.Windows.Forms.NotifyIcon try { $notifyIcon.Icon = [System.Drawing.Icon]::ExtractAssociatedIcon($ExePath) } catch { $notifyIcon.Icon = [System.Drawing.SystemIcons]::Application } $notifyIcon.Visible = $true $notifyIcon.Text = $FullTitle # 3. פונקציית עדכון המצב function Update-SleepState { param($ForceOff = $false) # בדיקה האם התוכנות פועלות $OtzariaRunning = Get-Process -Name "otzaria" -ErrorAction SilentlyContinue $ZayitRunning = Get-Process -Name "Zayit" -ErrorAction SilentlyContinue $AnyAppRunning = $OtzariaRunning -or $ZayitRunning if ($ForceOff -or (-not $script:ManualOverride) -or (-not $AnyAppRunning)) { # שחרור הנעילה - מאפשר למסך לכבות לפי הגדרות המחשב [void][Win32.Win32Sleep]::SetThreadExecutionState([uint32]2147483648) } else { # החלת הנעילה - מונע מהמסך לכבות [void][Win32.Win32Sleep]::SetThreadExecutionState([uint32]2147483651) } } # 4. יצירת תפריט קליק ימני $contextMenu = New-Object System.Windows.Forms.ContextMenu $toggleMenu = New-Object System.Windows.Forms.MenuItem("מניעת כיבוי מסך פעילה", { $script:ManualOverride = -not $script:ManualOverride $this.Checked = $script:ManualOverride Update-SleepState if ($script:ManualOverride) { $notifyIcon.ShowBalloonTip(3000, "נר תמיד", "מניעת כיבוי מסך בשימוש באוצריא וזית הופעלה.", [System.Windows.Forms.ToolTipIcon]::Info) } else { $notifyIcon.ShowBalloonTip(3000, "נר תמיד", "מניעת כיבוי מסך בשימוש באוצריא וזית הופסקה.", [System.Windows.Forms.ToolTipIcon]::Warning) } }) $toggleMenu.Checked = $true $startupMenu = New-Object System.Windows.Forms.MenuItem("הפעל את 'נר תמיד' עם עליית המחשב", { if ($this.Checked) { Remove-ItemProperty $RegPath $AppName } else { Set-ItemProperty $RegPath $AppName "`"$ExePath`"" } $this.Checked = -not $this.Checked }) $startupMenu.Checked = $null -ne (Get-ItemProperty $RegPath $AppName -ErrorAction SilentlyContinue) $exitMenu = New-Object System.Windows.Forms.MenuItem("יציאה", { Update-SleepState -ForceOff $true $notifyIcon.Visible = $false [System.Windows.Forms.Application]::Exit() Stop-Process -Id $PID -Force }) [void]$contextMenu.MenuItems.Add($toggleMenu) [void]$contextMenu.MenuItems.Add($startupMenu) [void]$contextMenu.MenuItems.Add("-") [void]$contextMenu.MenuItems.Add($exitMenu) $notifyIcon.ContextMenu = $contextMenu # 5. טיימר בדיקה - מוגדר ל-30 שניות $timer = New-Object System.Windows.Forms.Timer $timer.Interval = 30000 $timer.Add_Tick({ Update-SleepState }) $timer.Start() # הפעלה ראשונית Update-SleepState # 6. הודעת הפעלה $notifyIcon.ShowBalloonTip(3000, "נר תמיד", "המערכת פעילה ושומרת על המסך דלוק בשימוש בתוכנות אוצריא וזית.", [System.Windows.Forms.ToolTipIcon]::Info) [System.Windows.Forms.Application]::Run()עריכה: התוכנה שופרה ושוכללה - וכעת ניתן להגדיר בה עוד מלא תוכנות + הוספת תוכנות באופן עצמאי.
ניתן להורידה מכאן (מתמחים טופ, פשוט לטעמי זה כבר חורג מהקשר לפורום אוצריא).