Batch blockiert bei WIN8.1

Gast #3613709
Lesenswert?

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.
Gast #3613940
Lesenswert?

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
Gast #3614445
Lesenswert?

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
#3614463
Lesenswert?

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.
Gast #3614465
Lesenswert?

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:
1
[HKEY_CLASSES_ROOT\.bat]
2
@="batfile"
3

4
[HKEY_CLASSES_ROOT\batfile\shell\open\command]
5
@="\"%1\" %*"
Angehängte Dateien:
Gast #3614482
Lesenswert?

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.
Gast #3614585
Lesenswert?

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?
Gast #3614641
Lesenswert?

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.
Gast #3614644
Lesenswert?

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
Gast #3614898
Lesenswert?

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.
Gast #3615189
Lesenswert?

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.
Gast #3615264
Lesenswert?

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.
Gast #3615720
Lesenswert?

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.
Gast #3616959
Lesenswert?

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?
Gast #3618933
Lesenswert?

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.
Gast #3620026
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren