Hallo,
Seit kurzer Zeit kann ich Batchfiles nicht mehr ausführen die
bisher immer funktioniert haben. Ich benutze WIN8.1.
Die batch files werden von z.B.Eclipse aufgerufen, Eclipse sagt aber
dass es sie nicht finden kann.Der Pfad stimmt aber und sie sind auch
da. Anklicken geht nicht, nur wenn sie als ADMIN ausgeführt werden
kann ich sie auch starten.
Irgendwie scheine ich unbewusst was verstellt zu haben, denn wie gesagt
bis vor paar Tagen ging es noch.
Hat jemand eine Idee dazu da das sein könnte?
Danke sehr.
Ja, hab ich. Zugriff sollte erlaubt sein.
An anderer Stelle taucht auch noch ähnliches auf :
cs-make all
process_begin:
CreateProcess(C:\Users\User\AppData\Local\Temp\make4900-1.bat,
C:\Users\User\AppData\Local\Temp\make4900-1.bat, ...) failed.
make (e=2): Das System kann die angegebene Datei nicht finden.
cs-make: *** [xxx.o] Error 2
Batchfile schrieb:> werden von z.B.Eclipse aufgerufen
Probiere doch erst mal ob eine EIGENE Muster.bat grundsätzlich
funktioniert und nur bestimmte an bestimmten Orten oder von bestimmten
Usern das Problem haben.
Danke für die Antworten.
UAC abschalten, hilft nichts.
Eigene Batch Datei hatte ich inzwischen auch schon probiert,
geht auch nicht.
Inzwischen hab ich es vermutlich noch verschlimmert. Jetzt gehen
Batch Files auch nicht mehr wenn man sie mit "Als Admin ausführen"
versucht zu starten. Sie funktionieren nur über Command Line.
Aktueller Stand ist:
Batch File doppelklicken: "xyz.bat konnte nicht gefunden werden. Stelle
Sie sicher, dass Sie den Name richtig ....usw. ."
(es ist aber da , konnte ja draufklicken)
Batch File als Administartor ausführen: "Auf das abgegebene Gerät bzw.
Pfad oder die Datei kann nicht zugegriffen werden. Sie verfügen ggf.
nicht über ausreichende Berechtigung, um auf das Element zugreifen zu
können"
( Berechtigungen sind aber in Ordnung)
Das Batch File funktioniert jedoch wenn es via Kommandoziele aufgerufen
wird.
Langsam weiss ich nicht mehr weiter.
Hat jemand noch eine Idee dazu?
Danke
Batchfile schrieb:> Batch File als Administartor ausführen: "Auf das abgegebene Gerät bzw.> Pfad oder die Datei kann nicht zugegriffen werden. Sie verfügen ggf.> nicht über ausreichende Berechtigung, um auf das Element zugreifen zu> können"> ( Berechtigungen sind aber in Ordnung)>> Das Batch File funktioniert jedoch wenn es via Kommandoziele aufgerufen> wird.>> Langsam weiss ich nicht mehr weiter.>> Hat jemand noch eine Idee dazu?
Ruft der Doppelklick auf die Batchfile evtl. nicht die Kommandozeile auf
sondern einen anderen Interpreter?
Würde mich jetzt zwar wundern, aber naja.
Dann stimmt wohl die Datetyp-Zuordnung in der Registry nicht mehr.
Im Anhang die betreffenden Registry-Einträge einer win8.1-Maschine, wird
auf früheren Windows-Versionen vermutlich nicht sonderlich stark
abweichen.
Insbesondere relevant:
Ok, Danke.
Dein .reg File ist zwar nicht komplett zusammengeführt worden, aber
es hat gereicht um Batch files wieder per ADMIN ausführen starten zu
können.
Jetzt habe wieder den alten Stand und es bleibt noch
Batch File doppelklicken: "xyz.bat konnte nicht gefunden werden. Stelle
Sie sicher, dass Sie den Name richtig ....usw. ."
(es ist aber da , konnte ja draufklicken)
Hab noch einen Notebook auch mit WIN8.1 , dort kann ich Batch files
direkt durch Doppelcklick starten. habe schon die Registry verglichen,
aber nichts markantes gefunden.
Suche morgen weiter.
Danke nochmals.
Erscheint die Fehlermeldung bei Doppelklick auf eine .bat direkt als
Messagebox oder erscheint die Fehlermeldung in der einer Kommandozeile?
Wenn du einen anderen Windows-Benutzer anlegst: Kannst du dort
.bat-Dateien via Doppelklick ausführen?
Wenn eine Messagebox erscheint, dann könnte irgendein Programm
dahinterstecken, was noch mit .bat assozieiert ist, welches man evtl. im
Taskmanager identifizieren könnte, solange man die Messagebox stehen
läßt.
Was passiert, wenn Du das .bat in .cmd umbenennst?
bluppdidupp schrieb:> Erscheint die Fehlermeldung bei Doppelklick auf eine .bat direkt als> Messagebox oder erscheint die Fehlermeldung in der einer Kommandozeile?
In einer Message box
> Wenn du einen anderen Windows-Benutzer anlegst: Kannst du dort> .bat-Dateien via Doppelklick ausführen?
Kein anderes Verhalten, direkte Ausführung geht auch nicht.
Jens G. schrieb:> Wenn eine Messagebox erscheint, dann könnte irgendein Programm> dahinterstecken, was noch mit .bat assozieiert ist, welches man evtl. im> Taskmanager identifizieren könnte, solange man die Messagebox stehen> läßt.
Es sind nur zwei Apps aktive, der Taskmanager und der Windows Explorer.
Hintergrundprozesse natürlich jede Menge.
>> Was passiert, wenn Du das .bat in .cmd umbenennst?
Das gleiche Verhalten wie bei .BAT.
Danke für eure Hilfe und Geduld.
Noch eine Frage bluppdidupp.
Wie kann man die Registry Einträge extrahieren die zum BAT und CMD
gehören?
Ich meine, wie wurde dein batch_file_extension.reg erzeugt ?
Hoffe nicht händisch.
Dann könnte ich das gleiche bei mir machen und mal vergleichen.
Denn ganz hat es ja nicht funktioniert den Inhalt zu übernehmen.
Danke
Batchfile schrieb:> reg zum BAT und CMD
Dann mache z.B. eine Suche und exportiere die RICHTIGEN Einträge eines
gesunden Systems. Es besteht jedoch auch noch eine Möglichkeit daß z.B.
"administrative Vorgaben" Dir von irgendwo den Spaß verderben.
Das Einfachste wäre gewesen: ein Backup VOR dem Problem-Datum zu suchen.
oszi40 schrieb:> Das Einfachste wäre gewesen: ein Backup VOR dem Problem-Datum zu suchen.
Hab ich gemacht und es klappt jetzt alles wieder!
Hatte zum Glück vor 5 Tagen ein Windows Update gemacht. Dabei wird
automatisch eine Systemwiederherstellungspunkt erzeugt. Auf diesen
habe ich wieder aufgesetzt.
Ein kurzer Vergleich der relevanten Registrydaten hat keinen
Unterschied
gebracht.
Hätte ich gleich machen sollen, hätte mir viel und euch etwas Freizeit-
verlust erspart.
Danke jedenfalls für die Hilfestellung.
Noch ein Hinweis.
Das beschriebene Problem hängt irgendwie mit dem letzten Windows Update
zusammen.
Nach Rückkehr auf den Stand vor dem Update war wieder alles ok, nach
erneutem Update treten die Probleme wieder auf.
Hmm, KB2922229 behebt eine Sicherheitslücke beim starten von .bat/.cmd
Dateien: CreateProcess("bla.bat")* scheint standardmässig nach "cmd.exe"
auch im aktuellen Verzeichnis zu suchen und kann dadurch auch eine
potentiell gefährliche cmd.exe starten (statt
"C:\Windows\system32\cmd.exe" / %ComSpec%) - Das scheint dieses Update
zu beheben (und bereitet auf meinem System auch keine Probleme)
Evtl. ist bei dir die ComSpec-Umgebungsvariable nicht gesetzt/kaputt.
Was gibt das via Kommandozeile bei dir aus?
1
set ComSpec
2
set PathExt
*Eigentlich ist schon der Aufruf so falsch, korrekt wäre laut Doku zu
CreateProcess:
1
To run a batch file, you must start the command interpreter; set lpApplicationName to cmd.exe and set lpCommandLine to the following arguments: /c plus the name of the batch file.
bluppdidupp schrieb:> set ComSpec
Nein, der Pfad zum CMD,exe ist drin.
> set PathExt
.bat und .cmd ist drin
Inzwischen habe ich in einem anderem Forum vernommen, dass es
tatsächlich ein Problem mit KB2919355 gibt in dem wohl
KB2922229 and KB2936068 enthalten ist.
Nochmals eine Nachfrage:
Welches ist denn das richtig cmd.exe für WIN8.1 PRO?
Das auf C:\Windows\SysWow64\cmd.exe oder C:\Windows\System32\cmd.exe ?
Kann man unbedenklich %CPMSPEC% testhalber auf
C:\Windows\SysWow64\cmd.exe
umstellen?
Danke.
Noch eine spezielle Frage bitte:
Darf bei COMSPEC mehr als ein Pfad eingetragen sein ?
Ich sehe , dass neben dem CMD Pfad , noch ein
Java betreffender Pfad aufgeführt ist.
Das Problem ist gelöst.
Das besagte Update nimmt vermutlich übel, wenn man mehr als einen Pfad
in COMSPEC stehen hat. Der Version vor dem Update war das wahrscheinlich
egal. Es darf also nur der Pfad zum CMD.EXE dort auftauchen.
Beschreibung des Registry-Keys laut ms-technet:
"Stores the path and file name of the Windows command interpreter,
Cmd.exe."
"Default value: %SystemRoot%\system32\cmd.exe"
Hört sich eher nicht so an, als wäre dort etwas anderes als der Pfad zur
Windows cmd.exe vorgesehen.