mirror of
https://github.com/Andre-Bzk/FocusFix.git
synced 2026-11-15 09:33:14 +01:00
Feature: Wrapper, Logging und Doku überarbeitet
- Debug-Logging optional gemacht, den Legacy-Wrapper portabler aufgebaut (relative Pfade, Debug-Weitergabe, Python-Fallback) und die README für Endanwender und Entwickler klarer neu strukturiert.
This commit is contained in:
+42
-13
@@ -1,21 +1,50 @@
|
||||
Set WshShell = CreateObject("WScript.Shell")
|
||||
|
||||
' Prozessname aus dem ersten Argument (Steam %command%) extrahieren
|
||||
Dim exePath, fso, exeName
|
||||
Set fso = CreateObject("Scripting.FileSystemObject")
|
||||
exePath = WScript.Arguments(0)
|
||||
|
||||
Dim baseDir, pythonwPath, focusfixPath
|
||||
baseDir = fso.GetParentFolderName(WScript.ScriptFullName)
|
||||
pythonwPath = fso.BuildPath(baseDir, ".venv\Scripts\pythonw.exe")
|
||||
focusfixPath = fso.BuildPath(baseDir, "focusfix.py")
|
||||
|
||||
If Not fso.FileExists(pythonwPath) Then
|
||||
pythonwPath = "pythonw.exe"
|
||||
End If
|
||||
|
||||
Dim debugEnabled, exePath, exeName, gameCmd, arg, i
|
||||
debugEnabled = False
|
||||
exePath = ""
|
||||
gameCmd = ""
|
||||
|
||||
For i = 0 To WScript.Arguments.Count - 1
|
||||
arg = WScript.Arguments(i)
|
||||
|
||||
If arg = "-d" Or arg = "-debug" Or arg = "--debug" Then
|
||||
debugEnabled = True
|
||||
Else
|
||||
If exePath = "" Then
|
||||
exePath = arg
|
||||
End If
|
||||
gameCmd = gameCmd & """" & arg & """ "
|
||||
End If
|
||||
Next
|
||||
|
||||
If exePath = "" Then
|
||||
WScript.Quit 1
|
||||
End If
|
||||
|
||||
' Prozessname aus dem ersten nicht-Wrapper-Argument (Steam %command%) extrahieren
|
||||
exeName = fso.GetBaseName(exePath)
|
||||
|
||||
' FocusFix Script unsichtbar starten (pythonw = kein Konsolenfenster)
|
||||
WshShell.Run """C:\Projekte\Steam_backgroud_fix\.venv\Scripts\pythonw.exe"" ""C:\Projekte\Steam_backgroud_fix\focusfix.py"" --process """ & exeName & """", 0, False
|
||||
Dim focusfixCmd
|
||||
focusfixCmd = """" & pythonwPath & """ """ & focusfixPath & """"
|
||||
If debugEnabled Then
|
||||
focusfixCmd = focusfixCmd & " -debug"
|
||||
End If
|
||||
focusfixCmd = focusfixCmd & " --process """ & exeName & """"
|
||||
WshShell.Run focusfixCmd, 0, False
|
||||
|
||||
' Spiel starten: alle Argumente (= Steam %command%) zusammensetzen und ausführen
|
||||
Dim gameCmd, i
|
||||
gameCmd = ""
|
||||
For i = 0 To WScript.Arguments.Count - 1
|
||||
gameCmd = gameCmd & """" & WScript.Arguments(i) & """ "
|
||||
Next
|
||||
|
||||
If gameCmd <> "" Then
|
||||
' Spiel starten: alle übrigen Argumente (= Steam %command%) zusammensetzen und ausführen
|
||||
If Trim(gameCmd) <> "" Then
|
||||
WshShell.Run gameCmd, 1, False
|
||||
End If
|
||||
|
||||
Reference in New Issue
Block a user