.bat cmd/powershell (wieder) korrekt zuordnen.

Registriert
März 2012
Beiträge
8.110
Moin, ich habe mir gerade selbst was zerfriemelt, vielleicht weiß ja hier jemand weiter.

Hintergrund war, dass ich mit einer .bat eine Java Serverkonsole (Minecraft) starten wollte, die aber auch bunt ist um mehr Übersicht bei einem Blick darauf zu haben. Powershell hat das bisher gut gemacht, wollte aber nicht als ich es mit der .bat verknüpft habe um nicht immer den Befehl nebst Startparametern (einige) dort neu einzugeben.

Nun habe ich das Problem, dass zwar wieder cmd.exe startet wenn ich die .bat starte, allerdings überhaupt nichts mehr ausgeführt wird, der Server startet also nicht und ich müsste den Inhalt der .bat immer selbst in das cmd hineinkopieren.

Wie bekomme ich das wieder richtig? Also grundsätzlich, dass der Inhalt einer .bat auch im cmd (lieber sogar in der powershell) ausgeführt wird? mit assoc komme ich nicht weiter und Drittprogramme zum zuordnen scheinen nur das Programm zuzuordnen, nicht aber die Befehle dafür auch weiterzuleiten. Via "Standardprogramme" das Programm für .bat zu ändern half leider auch nicht und natürlich hat eine .bat (wer hätte es gedacht) keinen "Öffnen mit" Kontext - ich meine sogar .bat war vorher gar nichts zugeordnet - da ging es aber noch.

Ich nutze Windows10 v1909 x64.
 
Ich verstehe den Text auch beim dritten Mal lesen nicht wirklich...

Da hast eine Datei mit der Endung bat? Und was passiert, wenn Du diese doppelt anklickst?
 
Rechte Maustaste als Admin starten mal getestet?
 
Thaddelino schrieb:
Da hast eine Datei mit der Endung bat? Und was passiert, wenn Du diese doppelt anklickst?

Ein cmd Fenster geht auf, der Inhalt der bat wird ignoriert, nichts weiter wird ausgeführt, aber der Pfad wird übernommen.

sikarr schrieb:
Powershell ruft auch bloss die CMD auf, deswegen musst du ja Startparamter mitgeben.

Bringt nur leider wenig wenn es die eben ignoriert ;)

werkam schrieb:
Rechte Maustaste als Admin starten mal getestet?

Öhm, ja, dann habe ich ein offenes cmd Fenster mit Adminrechten und wieder nichts weiter ;)

Ich habs ja selbst verbastelt. In der bat steht imgrunde nur "java -jar mincecraft.jar", nur halt etwas komplexer (Startparameter Xmx Xms nogui usw.) - das ging auch im cmd Fenster dann eben, dass es den Server direkt mit den Befehlen gestartet hat. Ich wollte das aber wegen den Farben und ein paar anderen Vorteilen der Powershell in dieser haben, also habe ich .bat mit powershell öffnen lassen - was aber eben nicht ging, da dort der Befehl der bat nicht ausgeführt wurde, selbiges ist nun aber beim zurückstellen auf cmd.exe der Fall und das war vorher nicht so - so will ich das aber wieder haben wenn es schon nicht geht die bat in powershell nebst Befehlen zur Ausführung zu öffnen.

Ganz langsam für alle die es immer noch nicht haben:

.bat erstellt mit Inhalt "java -jar blabla.jar"
Datei gestartet->cmd ging auf und führte das aus, der Server startete und es wurde Output im cmd Fenster gegeben. Alles toll, nur leider einfarbig.
.bat mit Powershell öffnen lassen, dank fehlender "öffnen mit" Funktion via assoc zugewiesen->.bat Inhalt wird ignoriert, Powershell startet aber im Pfad der .bat
Gedacht: Okay, dann eben nicht->.bat wieder cmd.exe/batfile zugewiesen
Nun:cmd.exe geht beim starten der .bat auf und ignoriert ebenfalls dessen Einträge.
 
Zuletzt bearbeitet:
Magst Du sonst mal den Inhalt der Batchdatei posten?

Keine Ahnung was assoc so macht. Aber ggf ist einfach in der Registry was zerschossen?

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat
(Standard) - REG_SZ - batfile

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat\PersistentHandler
(Standard) - REG_SZ - {5e941d80-bf96-11cd-b579-08002b30bfeb}
 
Der Inhalt steht ja oben sinngemäß, kann ihn aber gern auch unten noch einmal posten ;) Genau mit diesem ging es auch immer, bzw. auch andere .bat Dateien funktionierten bis zu der tollen Idee .bat in der PS auszuführen statt im cmd.

Deine geposteten Registryeinträge decken sich mit meinen.
Vereinfachte Variante:

Code:
java -Xmx6188M -Xms2048M -jar paper-1.15.2_build_183.jar nogui

Etwas mehr Startparameter usw.
Code:
java -Xms3G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper-1.15.2_build_183.jar nogui

Der Inhalt sollte aber eigentlich auch egal sein, das Problem ist ja nicht das etwas in meiner bat nicht geht, sondern dass die gesamte bat Funktion nun schrott ist.
 
Hast Du denn noch zusätzliche (Unter-)Einträge? Bei mir sind es exakt die, die ich geschrieben habe.

Zusätzlich zu den Classes im HKLM Zweig gibt es diesen auch noch im HKCU. Vielleicht ist da etwas verstellt.
 
Bei mir finden sich…
Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.bat]
@="batfile"

[HKEY_CLASSES_ROOT\.bat\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"
Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\batfile]
@="Windows Batch File"
"EditFlags"=hex:30,04,00,00
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
  00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
  32,00,5c,00,61,00,63,00,70,00,70,00,61,00,67,00,65,00,2e,00,64,00,6c,00,6c,\
  00,2c,00,2d,00,36,00,30,00,30,00,32,00,00,00

[HKEY_CLASSES_ROOT\batfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\
  61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,36,\
  00,38,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell]

[HKEY_CLASSES_ROOT\batfile\shell\edit]

[HKEY_CLASSES_ROOT\batfile\shell\edit\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
  00

[HKEY_CLASSES_ROOT\batfile\shell\open]
"EditFlags"=hex:00,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\open\command]
@="\"%1\" %*"

[HKEY_CLASSES_ROOT\batfile\shell\print]

[HKEY_CLASSES_ROOT\batfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
  00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\runas]
"HasLUAShield"=""

[HKEY_CLASSES_ROOT\batfile\shell\runas\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6d,00,\
  64,00,2e,00,65,00,78,00,65,00,20,00,2f,00,43,00,20,00,22,00,25,00,31,00,22,\
  00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\runasuser]
@="@shell32.dll,-50944"
"Extended"=""
"SuppressionPolicyEx"="{F211AA05-D4DF-4370-A2A0-9F19C09756A7}"

[HKEY_CLASSES_ROOT\batfile\shell\runasuser\command]
"DelegateExecute"="{ea72d00e-4960-42fa-ba92-7792a7944c1d}"

[HKEY_CLASSES_ROOT\batfile\shellex]

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers]
@="Compatibility"

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers\Compatibility]
@="{1d27f844-3a1f-4410-85ac-14651078412d}"

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers\OpenGLShExt]
@="{E97DEC16-A50D-49bb-AE24-CF682282E08D}"

[HKEY_CLASSES_ROOT\batfile\shellex\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers\ShimLayer Property Page]
@="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}"

[HKEY_CLASSES_ROOT\batfile\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}]
@="{1531d583-8375-4d3f-b5fb-d23bbd169f22}"
Code:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat\OpenWithList]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat\OpenWithProgids]
"batfile"=hex(0):
Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\batfile]
@="Windows Batch File"
"EditFlags"=hex:30,04,00,00
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
  00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
  32,00,5c,00,61,00,63,00,70,00,70,00,61,00,67,00,65,00,2e,00,64,00,6c,00,6c,\
  00,2c,00,2d,00,36,00,30,00,30,00,32,00,00,00

[HKEY_CLASSES_ROOT\batfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\
  61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,36,\
  00,38,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell]

[HKEY_CLASSES_ROOT\batfile\shell\edit]

[HKEY_CLASSES_ROOT\batfile\shell\edit\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
  00

[HKEY_CLASSES_ROOT\batfile\shell\open]
"EditFlags"=hex:00,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\open\command]
@="\"%1\" %*"

[HKEY_CLASSES_ROOT\batfile\shell\print]

[HKEY_CLASSES_ROOT\batfile\shell\print\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
  54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\
  00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\runas]
"HasLUAShield"=""

[HKEY_CLASSES_ROOT\batfile\shell\runas\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6d,00,\
  64,00,2e,00,65,00,78,00,65,00,20,00,2f,00,43,00,20,00,22,00,25,00,31,00,22,\
  00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\batfile\shell\runasuser]
@="@shell32.dll,-50944"
"Extended"=""
"SuppressionPolicyEx"="{F211AA05-D4DF-4370-A2A0-9F19C09756A7}"

[HKEY_CLASSES_ROOT\batfile\shell\runasuser\command]
"DelegateExecute"="{ea72d00e-4960-42fa-ba92-7792a7944c1d}"

[HKEY_CLASSES_ROOT\batfile\shellex]

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers]
@="Compatibility"

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers\Compatibility]
@="{1d27f844-3a1f-4410-85ac-14651078412d}"

[HKEY_CLASSES_ROOT\batfile\shellex\ContextMenuHandlers\OpenGLShExt]
@="{E97DEC16-A50D-49bb-AE24-CF682282E08D}"

[HKEY_CLASSES_ROOT\batfile\shellex\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\batfile\shellex\PropertySheetHandlers\ShimLayer Property Page]
@="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}"

[HKEY_CLASSES_ROOT\batfile\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}]
@="{1531d583-8375-4d3f-b5fb-d23bbd169f22}"
Damit könnte man immerhin vergleichen.
 
Zurück
Oben