Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

Über Batch Programm ausführen, wenn vorhanden





Frage

Hallo Gemeinde, ich habe da ein Problem mit einer Batchdatei und hoffe das ihr mir bei der Problemlösung helfen könnt. Über eine Batch soll jekuckt werden um ein/e gewisses Programm bzw. Datei vorhanden ist. Wenn ja soll das Programm bzw. die Datei aufgerufen werden. Wenn dieses nicht der fall ist, soll eine Fehlermeldung auf den Bildschirm erscheinen. Das habe ick bereits jeschrieben: - - - - - if exist C:\Phantom\phantom.bat goto Open if not exit C:\Phantom\phantom.bat goto Fehler_Quelle :Open start C:\Phantom\phantom.bat GOTO ENDE :Fehler_Quelle @echo off net send %computername% Hallo, %username%, auf Ihrem Rechner ist das BOSS - Programm nicht richtig oder gar nicht installiert. Bitte wenden Sie sich an den Systemadministrator. @echo on GOTO ENDE :ENDE - - - - - Wenn die Datei vorhanden ist, wird sie entsprechende ausgeführt. Ist die Datei aber nicht vorhanden, erfolgt nicht die Fehlermeldung. Ich weiß leider nicht wo jetzt hier der Denkfehler liegt. Ich hoffe ihr könnt mir hierbei helfen. Ich danke schonmal im Vorraus. Liebe Grüße euer IT304

Antwort 1 von MPA

könnte es an diesem Schreibfehler liegen:
if not exit

richtig so:
if not exist


Antwort 2 von IT304

Hallo MPA,

danke. Manchmal ist man janz schön betriebsblind.
Jetzt funkioniert es natürlich,

Nochmals Danke.

IT304

Antwort 3 von IT304

Aber ick habe noch ein anderes Problem, was auch unter diese Kategorie passt.

Erstmal die Syntax:

- - - - -
if exist firefox.exe goto Open
if not exist firefox.exe goto M1

:Open
start firefox.exe http://www.google.de
GOTO ENDE


:M1
if exist iexplore.exe goto M2
if not exist iexplore.exe goto Fehler_Quelle

:M2
start iexplore.exe http://www.google.de
GOTO ENDE

:Fehler_Quelle
@echo off
net send %computername% Hallo, %username%, an Ihrem Rechner %Computername% wurde kein Browser zur Aufloesung der Internetseite "http://www.google.de" gefunden. Bitte wenden Sie sich an den Systemadministrator.
@echo on
GOTO ENDE

:ENDE

- - - - -

Wenn ich diese Batchdatei ausführe erscheint, immer gleich die Fehlermeldung. Hat jemand ne Ahnung wieso das nicht funktioniert.
Eines der beiden Programme ist immer installiert. (jedoch unterschiedliche Pfadangaben).

Ich hoffe ihr könnt mir auch bei diesem Problem helfen.

Vielen Dank nochmal im Vorraus.

Euer IT304.

Antwort 4 von MPA

mach das ganze mal mit den kompletten Pfadangaben, also:
"C:\Programme\Internet Explorer\iexplore.exe"
bzw:
"C:\Programme\Mozilla Firefox\firefox.exe"

die Anführungszeichen sind erforderlich

Antwort 5 von IT304

Hallo MPA,

das habe ich schon gemacht, dann funktioniert es ohne Probleme. Das Problem ist das die Programme bei unterschiedlichen Rechnern in anderen Verzeichnissen liegt.

Der eine Rechner hat C:\ als Standardpartition, der nächste Rechner hat D:\ als Standard.

Ganz kompliziert wird es ja beim Aufruf von Office-Anwendungen.
Der eine Rechner hat Office 97, der andere PC - Office 2000, der nächste wieder Office XP oder Office 2003 - also immer verschiedene Pfadangaben.

Alternativ wäre es natürlich alle möglichen Pfadangaben in die Batch einzubinden.

Aber geht das nicht einfacher zu realisieren?

Liebe Grüße, IT304

Antwort 6 von MPA

ok, solange es wenigstens das gleiche Verzeichnis unter Programme ist, geht es mit Hilfe der Variablen %ProgramFiles% Diese verweist in das Programme-Verzeichnis, egal wo es liegt.
also so:
"%ProgramFiles%\Internet Explorer\iexplore.exe"


für verschiedene Office-Versionen fällt mir da spontan nichts ein. Ich denk mal drüber nach

Antwort 7 von IT304

Hallo MPA,

leider funktioniert das immer noch nicht so richtig.

Obwohl Firefox installiert und auch der Pfad richtig angeben ist, nimmt er diesen nicht.

Er springt immer gleich zum Internet Explorer, was natürlich im schlechstestens Fall in Ordnung ist, aber halt nicht wünschenswert ist.

- -

Dat mitten Office is natürlich die größere Nuss, die ick auch noch nicht jeknackt habe.

Falls jemand ne Idee hat, wäre ich für nen Tipp sehr Dankbar.

Liebe Grüße,
IT304

Antwort 8 von Mikoop

Hallo,

Den Browser kannst du doch weglassen, es wird dann der voreingestellte Standardbrowser gewählt.
Also zB start www.supportnet.de

Das kannst du so aufrufen aus der Bat-Datei, dann kommt eben der Standardbrowser. Habe ich soeben ausprobiert.

Gruss, Mikoop

Antwort 9 von Mikoop

Edit :

Und das klappt auch bei Office ( auf jeden Fall bei mir , Win2K und Office 97)

start winword öffnet word
start excel öffnet excel

Gruss, Mikoop

Antwort 10 von MPA

hab den Fehler gefunden.
Der Befehl <start> erwartet zwischen den ersten Anführungszeichen einen Titel. Also muss die Zeile dann so aussehen:

start "Firefox" "%ProgramFiles%\Mozilla Firefox\firefox.exe" http://www.google.de

muss alles in eine Zeile

bzw

start "IE" "%ProgramFiles%\Internet Explorer\iexplore.exe" http://www.google.de

muss alles in eine Zeile

der Titel ist natürlich frei wählbar.

Am einfachsten ist es natürlich wie Mikoop sagt, da in der Regel diese Programme im Suchpfad liegen.
Na ja, auf das einfachste kommt man irgendwie nicht. :-)

Antwort 11 von IT304

Hallo Mikoop,

da diese Batch über ne HTML Seite aufjerufen wird, die im Outlook den Hintergrund bildet, öffnet sich immer der Internet Explorer, obwohl Firefox der Standardbrowser ist.

Wenn alle Officeanwendungen (ejal ob 2003, XP, 2000 oder 97) natürlich alle über die selbe Exe-Datei verfügen, jibet es da kein Problem.

habe dat auch momentan so in den batches stehen

start winword.exe

start excel.exe

start powerpnt.exe

Ick bin mir jetzt halt bloß nit sicher, ob die Exe-Dateien bei allen Office-Versionen die gleichen sind.

LG, IT304

Antwort 12 von IT304

Hallo MPA,

ick habe dat mit dem Titel gemacht. Wenn man die Batch normal ausführt, funktioniert dat ohne Probleme.

Aber wie ick oben schon mal jeschrieben habe, werden die Batches über eine HTML-Seite in Outlook aufgerufen. Und da komischerweise öffnet er immer wieder den Internet Explorer. Es hat den anschein, also wenn er die Batch gar nicht initialisiert und nur die Url aufruft.

- - -

Dat ist natürlich richtig Mist, dat dat nit klappt.
Wenn jemand noch Idee dazu hätte, wäre ick euch immer noch sehr Dankbar.

Liebe Grüße,
Eurer IT304

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: