Utworzono niestandardowe rozszerzenie pliku, które zostałoby skojarzone ze skryptem wsadowym. użyłemWindows: ustanów powiązanie plików z plikiem wsadowym
ASSOC .myext=MY.FILETYPE
FTYPE MY.FILETYPE=cmd /c "C:\Path\of\my\batch.bat" %1 %*
teraz plik wsadowy "C: \ ścieżka \ z \ Moje \ batch.bat" jest prosta-liner
echo %1
I mniej więcej działa: dwukrotne kliknięcie. Plik myext powoduje wyświetlenie powłoki cmd odtwarzającej ścieżkę pliku.
Ale problem powstaje, gdy plik .myext znajduje się w ścieżce zawierającej spacje: echoed ścieżka pliku jest obcięta do spacji.
Podwójne cytowanie% 1 w instrukcji FTYPE wydaje się nie działać.
FTYPE MY.FILETYPE=cmd /c "C:\Path\of\my\batch.bat" "%1" %*
czy dzwonisz 'FTYPE MY.FILETYPE = cmd/c" C: \ Ścieżka \ z \ my \ batch.bat ""% 1 "% *' z pliku nietoperza? – npocmaka