48046
Goto Top

Message-Titel in Batch manipulieren

Hallo !

Man kann mit folgendem Batch-Inhalt eine Message-Box aufrufen:

msg * Erste Zeile
msg * Zweite Zeile
msg * Dritte Zeile usw.

Allerdings steht in der so erzeugten Message-Box als Titelzeile immer als Absender der aktive User.
Meine Frage ist nun, kann man den Absendernamen (bzw. die Titelzeile), nach eigenen Wünschen abändern?


Gruß ELMI

Content-Key: 95189

Url: https://administrator.de/contentid/95189

Printed on: April 18, 2024 at 11:04 o'clock

Member: bastla
bastla Aug 24, 2008, updated at Oct 18, 2012 at 16:36:08 (UTC)
Goto Top
Hallo Elmi55!

Soferne Du die MsgBox nur lokal benötigst, könntest Du Dir diesen Beitrag ansehen ...

Grüße
bastla
Mitglied: 48046
48046 Aug 24, 2008 at 08:08:53 (UTC)
Goto Top
Hallo bastla !


Ja das sieht schon sehr gut aus für meine Zwecke face-smile

Einziges optisches Manko ist, dass im Hintergrund während der
ganzen Aktion ein DOS-Fenster steht, bzw. überhaupt erzeugt wird.
Läßt sich dies noch irgendwie unterdrücken !?

Ansonsten schon top face-smile

Gruß ELMI
Member: bastla
bastla Aug 24, 2008 at 08:39:02 (UTC)
Goto Top
Hallo Elmi55!

Eigentlich wäre ich davon ausgegangen, dass die MsgBox aus einem Batch heraus aufgerufen wird (und somit ohnehin ein CMD-Fenster offen ist) ...

Wenn Du auf die Auswertung des Errorlevels ("Welche Schaltfläche hat der Benutzer verwendet?") verzichten kannst, dann etwa so:
@echo off & setlocal
set M=%temp%\Meldung.vbs
>%M% echo Set args=WScript.Arguments:WScript.Quit MsgBox(args(0),args(1),args(2))
start "" wscript %M% "Das ist der Fehlertext!" 0 "Das ist der Titel"  
Grüße
bastla
Mitglied: 48046
48046 Aug 24, 2008 at 10:13:21 (UTC)
Goto Top
Hallo bastla !


Ja genau, so ist es perfekt !

Auch bei meinem eingangs genannten Beispiel-Code poppt
zwar kurz ein DOS-Fenster auf, aber ist auch sofort wieder
verschwunden. Der gleiche Effekt ist jetzt auch hierbei
(also ohne Errorlevels).

Einfach prima, vielen Dank an Dich bastla face-smile


Gruß ELMI
Member: bastla
bastla Aug 24, 2008 at 11:44:21 (UTC)
Goto Top
Hallo Elmi55!

Da ich ja nix über den Sinn der Aktion (und noch nicht einmal, wie/von wem diese MsgBox überhaupt aufgerufen wird) weiß, kann ich Dir nur noch als allgemeine Variante folgendes vorschlagen: Spare den Batch ein, und verwende nur ein VBScript ("Meldung.vbs"), etwa:
Text = "Dein Text"  
Typ = 0
Titel = "Dein Titel"  
MsgBox Text, Typ, Titel
Da "wscript.exe" per Default als Interpreter für VBScript festgelegt ist, musst Du dann nur noch die Scriptdatei starten ...

Grüße
bastla
Mitglied: 48046
48046 Aug 24, 2008 at 12:36:30 (UTC)
Goto Top
Hi bastla !


Bist mal wieder unschlagbar, dass das so funktionieren könnte,
darauf kam ich eigentlich noch garnicht (also ohne den Weg über
die BATCH).

Aber es funktioniert perfekt und ist für den Zweck, für den ich es
benötige, geradezu ideal.


Nochmals meinen Dank an Dich face-smile


Gruß ELMI