Seite 2 von 2

Re: [gelöst] wol.exe - wake on lan - PC starten - Windows 11 24H2 als Client

Verfasst: 12.08.2025, 16:25
von KaiM
Natürlich nicht, weil ich keine Ahnung von Scripten habe. :-(
Nur WOL wollte ich.

Re: [gelöst] wol.exe - wake on lan - PC starten - Windows 11 24H2 als Client

Verfasst: 12.08.2025, 20:44
von Holgi
HAL 9000 hat geschrieben: 12.08.2025, 15:31 Deine Abfrage nach AMD64 müsste ja auch nur umgedreht werden, also bei x86 nutze SsyWOW64 und bei AMD64 nutze System32.
wie genau meinst du das? etwas so:

Code: Alles auswählen

@Echo off
:Admin
cls

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
    IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
)

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params= %*
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"

:gotAdmin
da öffnet sich dann ein CMD Fenster nach dem anderen.

Re: [gelöst] wol.exe - wake on lan - PC starten - Windows 11 24H2 als Client

Verfasst: 12.08.2025, 21:52
von HAL 9000
Hallo Holgi, konnte ich nachstellen,
bei

Code: Alles auswählen

 IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
kommt 2 für '%errorlevel%
bei

Code: Alles auswählen

IF "%PROCESSOR_ARCHITECTURE%" EQU "AMD64" (
kommt 0 für '%errorlevel%
cmd scheint da case-sensitiv zu sein.
wenn das Script in :UACPrompt zu goto gotAdmin kommt, fängt der Loop an.

Wenn man da ein exit einfügt, beendet sich das ursprüngliche Script zwar, aber es wurde inzwischen eine weitere Instanz gestartet, die wiederum eine neue Instanz startet.....

Re: [gelöst] wol.exe - wake on lan - PC starten - Windows 11 24H2 als Client

Verfasst: 12.08.2025, 23:01
von Holgi
ah, ok
man könnte sich wohl auch ganz von dieser Abfrage verabschieden, da wir ja zukünftig sowieso kein 32bit Betriebssystem mehr haben werden.
Würde dann so aussehen:

Code: Alles auswählen

@Echo off
:Admin
cls

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params= %*
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"

:gotAdmin 
echo [OK] Skript laeuft mit Administratorrechten.
pause
wobei cacls.exe wohl als veraltet einzustufen ist.