Meldungen von aufgerufenem Programm unterdrücken
Ich heisse Markus und bin heute zum ersten Mal hier im Forum. Deshalb mal ein herzliches Hallo zusammen.
Ich überarbeite gerade mein Batch-Programm das folgendes macht:
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk3\Partition1 /lm /p "%password%" /q
Dieser code funktioniert eigentlich wunderbar!
Mein Problem:
Windows legt nun beim booten die Harddisk-Nummerierung immer etwas anders fest.
Das heisst heute ist es ...\Device\Harddisk3 morgen ...\Device\Harddisk4 und gestern war es ...\Device\Harddisk1
Dieses Phänomen ist ja bekannt.
Nun muss ich jeden Tag in der Systemverwaltung nachschauen was meine BackupHD für eine Nummer erhalten hat. Dies in meinem Batch programm eingeben und ausführen.
Mein Lösungsansatz:
1 SET tempZahler=-
2 echo %tempZahler%
3 "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk0\Partition1 /lm /p "%password%" /q
4 if errorlevel 1 (
5 set tempZaehler=0
6 echo %tempZahler%
7 "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q
8 pause
9 ) ELSE (
10 SET tempZaehler=kein Fehler!
11 echo %tempZahler%
12 pause
13 )
Nummerierung der Zeile zur Verständlichkeit.
[Edit Biber: und jetzt mal automatisch nummeriert (und vorher manuell de-nummeriert) *g]
[/Edit Biber]
Die if else Anweisung muss noch ausgebaut werden damit ca. bis Hardsisk9 alles abgefragt wird.
"pause" nur zum testen.
Annahme die BackupHD hat die Nummer 0 -> kein Fehler (so funktioniert es ja)
Annahme die BackupHD hat die Nummer 3 -> Es kommt eine Fehlermeldung
Meine Fragen:
1. Warum wird in der Zeile 6 nochmals ein "-" ausgegeben?
Ich habe ja zuvor die Variable mit 0 definiert.
2. (jetzt komme ich zum Titelinhalt
Die Anweisung
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q
gibt mir folgende Fehlermeldung als erstes Zurück:
(Meldung von TrueCrypt)
Warnung: Die Datei / das Laufwerk ist bereits in Verwendung!
......
das ist mir ja klar und auch in Ordnung so. Darum möchte ich diese Fehlermeldung ignorieren.
Also habe ich die Anweisung mit 2^>nul ergänzt
-> "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q 2^>nul
Leider passiert nichts. Das heisst die Fehlermeldung erscheint trotzdem.
Warum?
Wenn mir hierbei jemand helfen könnte?
Beste Grüsse
Markus
Ich überarbeite gerade mein Batch-Programm das folgendes macht:
Es startet TrueCrypt und mappt ein verstecktes Laufwerk (Backup)
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk3\Partition1 /lm /p "%password%" /q
Dieser code funktioniert eigentlich wunderbar!
Mein Problem:
Windows legt nun beim booten die Harddisk-Nummerierung immer etwas anders fest.
Das heisst heute ist es ...\Device\Harddisk3 morgen ...\Device\Harddisk4 und gestern war es ...\Device\Harddisk1
Dieses Phänomen ist ja bekannt.
Nun muss ich jeden Tag in der Systemverwaltung nachschauen was meine BackupHD für eine Nummer erhalten hat. Dies in meinem Batch programm eingeben und ausführen.
Microsoft hat ;-(
Mein Lösungsansatz:
1 SET tempZahler=-
2 echo %tempZahler%
3 "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk0\Partition1 /lm /p "%password%" /q
4 if errorlevel 1 (
5 set tempZaehler=0
6 echo %tempZahler%
7 "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q
8 pause
9 ) ELSE (
10 SET tempZaehler=kein Fehler!
11 echo %tempZahler%
12 pause
13 )
Nummerierung der Zeile zur Verständlichkeit.
[Edit Biber: und jetzt mal automatisch nummeriert (und vorher manuell de-nummeriert) *g]
SET tempZahler=-
echo %tempZahler%
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk0\Partition1 /lm /p "%password%" /q
if errorlevel 1 (
set tempZaehler=0
echo %tempZahler%
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q
pause
) ELSE (
SET tempZaehler=kein Fehler!
echo %tempZahler%
pause
)
Die if else Anweisung muss noch ausgebaut werden damit ca. bis Hardsisk9 alles abgefragt wird.
"pause" nur zum testen.
Annahme die BackupHD hat die Nummer 0 -> kein Fehler (so funktioniert es ja)
Annahme die BackupHD hat die Nummer 3 -> Es kommt eine Fehlermeldung
Meine Fragen:
1. Warum wird in der Zeile 6 nochmals ein "-" ausgegeben?
Ich habe ja zuvor die Variable mit 0 definiert.
2. (jetzt komme ich zum Titelinhalt
Die Anweisung
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q
gibt mir folgende Fehlermeldung als erstes Zurück:
(Meldung von TrueCrypt)
Warnung: Die Datei / das Laufwerk ist bereits in Verwendung!
......
das ist mir ja klar und auch in Ordnung so. Darum möchte ich diese Fehlermeldung ignorieren.
Also habe ich die Anweisung mit 2^>nul ergänzt
-> "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk1\Partition1 /lm /p "%password%" /q 2^>nul
Leider passiert nichts. Das heisst die Fehlermeldung erscheint trotzdem.
Warum?
Wenn mir hierbei jemand helfen könnte?
Beste Grüsse
Markus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 164030
Url: https://administrator.de/forum/meldungen-von-aufgerufenem-programm-unterdruecken-164030.html
Ausgedruckt am: 21.04.2025 um 21:04 Uhr
15 Kommentare
Neuester Kommentar

moin,
ich will mal nicht so sein...
edit und willkommen...und etwas diät verpasst
bzw: etwas eleganter, wenn auch ungetestet...
ich würde aber (wenn Adminrechte vorhanden sind) vorher mit fsutil das Laufwerk raussuchen und dann gezielt Truecrypt anwerfen.
Gruß
edit
[Edit Biber: und jetzt mal automatisch nummeriert]
doppelt gemoppelte Arbeit - mag ich ja
[/edit]
ich will mal nicht so sein...
edit und willkommen...und etwas diät verpasst
SET /a tempZaehler=1
:start
echo %tempZaehler%
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk%tempZaehler%\Partition1 /lm /p "%password%" /q
if errorlevel 1 (
set /a tempZaehler=+1
goto start
)
bzw: etwas eleganter, wenn auch ungetestet...
for /l %%a in (1,1,9) do "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \Device\Harddisk%%a\Partition1 /lm /p "%password%" /q
Also habe ich die Anweisung mit 2^>nul ergänzt
falsch - >nul 2>nulGruß
edit
[Edit Biber: und jetzt mal automatisch nummeriert]
doppelt gemoppelte Arbeit - mag ich ja
[/edit]
Hallo Markus8000 und auch von mir ein Willkommen!
Schleife Klammer die Variableninhalte an, und dann erst wieder am Beginn der nächsten Zeile (die gesamte Schleife Klammer wird wie eine einzige, lange Zeile behandelt) ...
Grüße
bastla
1. Warum wird in der Zeile 6 nochmals ein "-" ausgegeben?
Ich habe ja zuvor die Variable mit 0 definiert.
Sie hat auch den Wert 0 - allerdings interessiert das den CMD-Interpreter vorläufig nicht; der sieht sich nämlich (wenn er nicht per "Ich habe ja zuvor die Variable mit 0 definiert.
setlocal enabledelayedexpansion
" - dazu findest Du hier im Forum eine ganze Menge an Erklärungen - zu einer anderen Vorgangsweise "überredet" wird) nur zu Beginn der Grüße
bastla

moin Bastla...
TempZahler zaehlt heute nicht, das fehlende e geht aufs Haus...
Grüße
TempZahler zaehlt heute nicht, das fehlende e geht aufs Haus...
01. SET tempZahler=-
05. set tempZaehler=0
06. echo %tempZahler%
05. set tempZaehler=0
06. echo %tempZahler%
- schleifche hatt er ja auch nischdd....
Grüße
@t-mo
Hast recht - die Schleife gab's ja erst bei Dir; für die Klammer nach dem "
[Edit] @Biber: Wenn's aber doch innerhalb der Klammer passieren soll (sinnvoll oder nicht) ... [/Edit]
Grüße
bastla
Hast recht - die Schleife gab's ja erst bei Dir; für die Klammer nach dem "
if
" gilt aber ohnehin das Gleiche (wenn dann mal die Variavlennamen stimmen werden) ...[Edit] @Biber: Wenn's aber doch innerhalb der Klammer passieren soll (sinnvoll oder nicht) ... [/Edit]
Grüße
bastla
Zitat von @Markus8000:
Hallo Biber
Danke für die Formatierung oben.
Ich hab zwar nicht verstanden WIE du das gemacht hast. Aber sieht doch viel besser aus
.
Hallo Biber
Danke für die Formatierung oben.
Ich hab zwar nicht verstanden WIE du das gemacht hast. Aber sieht doch viel besser aus
Aloha,
beim Verfassen von Beiträgen/Kommentaren gibt es doch extra das Wort Formatierungshilfe, wo du dann u.a. auch die angezeigt bekommst.
greetz André
Moin Markus8000,
Ich dachte, du schaust dir deinen Eröffnungsbeitrag (mit "Editieren") an, um meine Formatierungsmassnahmen nachzuvollziehen.
Aber mit dem Link von Skyemugen ist es natürlich professioneller.
Grüße
Biber
Zitat von @Markus8000:
Hallo Biber
Danke für die Formatierung oben.
Ich hab zwar nicht verstanden WIE du das gemacht hast. Aber sieht doch viel besser aus
.
Na ja, mein Plan war eigentlich deine natürliche Neugier zu nutzen...Hallo Biber
Danke für die Formatierung oben.
Ich hab zwar nicht verstanden WIE du das gemacht hast. Aber sieht doch viel besser aus
Ich dachte, du schaust dir deinen Eröffnungsbeitrag (mit "Editieren") an, um meine Formatierungsmassnahmen nachzuvollziehen.
Aber mit dem Link von Skyemugen ist es natürlich professioneller.
Grüße
Biber

moin,
Das sollten aber Windows Popups sein, die bekommst du logischerweise mit >nul nicht weg,
Der Tipp mit FSutil war ein Griff insBlaue gekachelte Zimmer.
Nur ganz ehrlich - mir fehlt da der springende Punkt, ab dem es sich für mich lohnen würde weitere Zeit da reinzustecken und die Zeit dir zu schreiben warum - nehm ich mir...
Deine Batch hat das passwort aber im Klartext von daher führst du das, was Truecrypt eigentlich machen soll - Adabsurdum.
Wenn du das bist jetzt gelesen hast - dann hier ein klitschkokleiner Tipp.
Die Schleife / nicht Schlaufe ist flüssiger als flüssig - nimm einfach den Volume Namen, der ändert sich nicht (außer du änderst Ihn)
Wie der lautet findest du mit montvol raus.
Gruß
-nul 2>nul funktioniert, allerdings nur für die erste Meldung.
- muß ja...
Danach werden folgende zwei Meldungen weiterhin ausgegeben:
"Das Gerät ist nicht bereit.
Falls Sie auf ein Laufwerk für Wechselmedien zugreifen möchten, stellen Sie bitte sicher, dass sich ein Wechselmedium in diesem Laufwerk befindet. ....."
Falls Sie auf ein Laufwerk für Wechselmedien zugreifen möchten, stellen Sie bitte sicher, dass sich ein Wechselmedium in diesem Laufwerk befindet. ....."
Das sollten aber Windows Popups sein, die bekommst du logischerweise mit >nul nicht weg,
Der Tipp mit FSutil war ein Griff ins
Nur ganz ehrlich - mir fehlt da der springende Punkt, ab dem es sich für mich lohnen würde weitere Zeit da reinzustecken und die Zeit dir zu schreiben warum - nehm ich mir...
- Die Frage (der Überschrift zu urteilen) - die jedem, der den Fred mal findet - ist mehr als erledigt.
- Es geht um Truecrypt im speziellen - vielleicht opferst du ein paar sekunden und änderst den Titel?
- Truecrpypt soll eine sichere Sache sein, deswegen ist da ein password hinterlegt.
Deine Batch hat das passwort aber im Klartext von daher führst du das, was Truecrypt eigentlich machen soll - Adabsurdum.
Wenn du das bist jetzt gelesen hast - dann hier ein klitschkokleiner Tipp.
Die Schleife / nicht Schlaufe ist flüssiger als flüssig - nimm einfach den Volume Namen, der ändert sich nicht (außer du änderst Ihn)
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v \\?\Volume{1aabbccd-1234-5678-90ab-0815321680}\ /lm /p "%password%" /q
Wie der lautet findest du mit montvol raus.
Gruß

Salü,
ich machs kurz... (keine Zeit)
Es ist genauso, wie ich schrub...
"Für mich" wäre ist das kein wirkliches Ding, das ich automatisieren würde.
Dir einen Weg zu nennen, wie man es automatisieren kann - ohne drauf hinzuweisen, was man da eigentlich macht - ist in meinen Augen auch ein Nogo.
Denn "wir" müssen immer dran denken, das was wir schreiben wird auch später von anderen gefunden, die ähnliches vorhaben oder den Wald vor lauter Bäumen nicht sehen.
Und geänderte Titel - da ist die Googleities vom Frank so gut gebaut, die kann das ab. (Hab selber schon ein paar Anleitungen nachträglich umgemünzt)
Nimms gelassen nur weil ich einen Segelschein hab und dort eine Schlaufe eine andere bedeutung hat als eine Schleife, müssen wir uns darüber keinen Knoten in den Kopf zimmern oder dem anderen eine Schlinge draus machen.
Gruß
ich machs kurz... (keine Zeit)
Nur ganz ehrlich - mir fehlt da der springende Punkt, ab dem es sich für mich lohnen würde weitere Zeit da reinzustecken
Es ist genauso, wie ich schrub...
"Für mich" wäre ist das kein wirkliches Ding, das ich automatisieren würde.
Dir einen Weg zu nennen, wie man es automatisieren kann - ohne drauf hinzuweisen, was man da eigentlich macht - ist in meinen Augen auch ein Nogo.
Denn "wir" müssen immer dran denken, das was wir schreiben wird auch später von anderen gefunden, die ähnliches vorhaben oder den Wald vor lauter Bäumen nicht sehen.
Und geänderte Titel - da ist die Googleities vom Frank so gut gebaut, die kann das ab. (Hab selber schon ein paar Anleitungen nachträglich umgemünzt)
PS: Schlaufe - Schleife sind Synonyme.
Nimms gelassen nur weil ich einen Segelschein hab und dort eine Schlaufe eine andere bedeutung hat als eine Schleife, müssen wir uns darüber keinen Knoten in den Kopf zimmern oder dem anderen eine Schlinge draus machen.
Gruß