Meldungsbox aus cmd aufrufen mit Powershell?
Guten Tag,
ich möchte aus einem Batch Script (.bat) am Ende ein Meldungsfenster aufrufen in der Art:
"Hinweis: Das Backup war erfolgreich!" -> OK
Idealerweise mit Powershell. Hierzu habe ich einen Powershell-Befehl gefunden:
$wshshell = new-object -comobject wscript.shell
$Answer = $wshshell.popup("Mitteilung",0,"Kopfzeile",4)
Doch ich weiß nicht, wie man dies aus einer cmd Datei aufruft. Ausserdem möchte ich auch nur einen Knopf, nämlich OK.
Kann mir bitte jemand helfen?
Vielen Dank!
Stefan
ich möchte aus einem Batch Script (.bat) am Ende ein Meldungsfenster aufrufen in der Art:
"Hinweis: Das Backup war erfolgreich!" -> OK
Idealerweise mit Powershell. Hierzu habe ich einen Powershell-Befehl gefunden:
$wshshell = new-object -comobject wscript.shell
$Answer = $wshshell.popup("Mitteilung",0,"Kopfzeile",4)
Doch ich weiß nicht, wie man dies aus einer cmd Datei aufruft. Ausserdem möchte ich auch nur einen Knopf, nämlich OK.
Kann mir bitte jemand helfen?
Vielen Dank!
Stefan
Please also mark the comments that contributed to the solution of the article
Content-Key: 32132605449
Url: https://administrator.de/contentid/32132605449
Printed on: May 10, 2024 at 11:05 o'clock
7 Comments
Latest comment
Hallo,
ich würde das genau anders herum machen, mit der powershell das bat script aufrufen und auf basis eines returnwertes der bat eine MessageBox erzeugen.
grüße
ich würde das genau anders herum machen, mit der powershell das bat script aufrufen und auf basis eines returnwertes der bat eine MessageBox erzeugen.
# Batch-Datei aufrufen
Start-Process "C:\Temp\batch.bat"
# Exit-Code abrufen
$exitCode = $LastExitCode
# Exit-Code auswerten
if ($exitCode -eq 0) {
$message = "Die Batch-Datei wurde erfolgreich ausgeführt."
$title = "Information"
$icon = [System.Windows.MessageBoxIcon]::Information
$buttons = [System.Windows.MessageBoxButton]::OK
Show-MessageBox $message -Title $title -Icon $icon -Buttons $buttons
} else {
Write-Host "Die Batch-Datei wurde mit einem Fehler beendet. Exit-Code: $exitCode"
}
grüße
@echo off
set "message=Backup done."
powershell -EP ByPass -C "Add-Type -A System.Windows.Forms;[System.Windows.Forms.MessageBox]::Show('%message%','Info',0,64)"
also aus DOS rufst du ein Powershell Script so auf:
und in die ps1 Datei legst du deinen Powershell Code rein.
Sprich diese Zeile und Pfad zur PS1 Datei in deine .bat Datei als Zeile rein.
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -executionpolicy Unrestricted -File "c:\PowerShellScript.ps1"
und in die ps1 Datei legst du deinen Powershell Code rein.
Sprich diese Zeile und Pfad zur PS1 Datei in deine .bat Datei als Zeile rein.