Jak mogę otworzyć aplikację konsoli o danym rozmiarze okna?


16

Aplikacja, którą chcę uruchomić, to MongoDB. Gdybym zaczął normalnie, wygląda to tak:

wprowadź opis zdjęcia tutaj

Nie podoba mi się ilość podziałów linii i mam dużo miejsca na ekranie, więc chciałbym wykorzystać tę przestrzeń, aby pozbyć się podziałów linii.

Mogę zmienić rozmiar okna konsoli MODE, więc napisałem plik wsadowy w następujący sposób:

@ECHO OFF
MODE con:cols=140 lines=70
%~dp0mongodb\bin\mongod --dbpath %~dp0data --rest

Jak na razie dobrze. Kiedy uruchamiam ten plik wsadowy, w razie potrzeby pojawia się większe okno.

Ale kiedy teraz naciskam Ctrl+, Caby wyjść z MongoDB, pojawia się irytujący monit:

Terminate batch job (Y/N)?

Co jest bezużyteczne, ponieważ polecenie, z którego właśnie wyszedłem, i tak było ostatnim poleceniem w zadaniu wsadowym i bez względu na to, co odpowiem, wynik jest taki sam.

Jak mogę uzyskać większe okno konsoli dla aplikacji bez wyświetlania tego monitu po naciśnięciu Ctrl+ C?

Odpowiedzi:


12

Spędziłem dziś kilka godzin na wdrożeniu małej aplikacji w języku C #, która może owinąć inną aplikację konsoli i dostosować rozmiar okna hosta konsoli.

console-wrapperjest łatwy w użyciu. Oczekuje tylko kilku parametrów wiersza poleceń:

Usage: console-wrapper.exe [OPTIONS]

Options:

      --subject=VALUE        The application that should be started by the
                               console wrapper.
      --width=VALUE          The desired width of the console window.
      --height=VALUE         The desired height of the console window.
  -h, -?, --help             Shows this help message

--widthi --heightsłużą do ustawienia rozmiaru wynikowego okna konsoli. --subjectmożna użyć opcjonalnie, jeśli zostanie pominięty, pozostałe parametry są traktowane jako polecenie (z parametrami) do uruchomienia.

Ostatnim wywołaniem, którego teraz używam w naszym skrypcie uruchamiania, jest:

START "MongoDB" database\console-wrapper.exe --width=140 --height=70 %~dp0database\mongodb\bin\mongod.exe --dbpath %~dp0database\data --rest

Wynikowe okno będzie miało żądany rozmiar, a po naciśnięciu Ctrl+ Cokno zostanie zamknięte (po prawidłowym zamknięciu zawartego procesu).


6

Czy rozważałeś uruchomienie go ze skryptu PowerShell? Program PowerShell może zmieniać rozmiar własnego okna

$h = Get-Host
$buf = $h.UI.RawUI.BufferSize
$buf.Width = 300
$h.ui.rawui.BufferSize = $buf
$win = $h.UI.RawUI.WindowSize
$win.Width = 150
$h.ui.rawui.WindowSize = $win
#Command to start mongodb here.

To tworzy okno o rozmiarze 150, ale ma również buforowany przewijany bufor 300.


Tak, zastanowiłem się nad tym, ale nie wiedziałem wtedy, jak go wdrożyć. Działa to doskonale, z wyjątkiem niewielkiej irytacji, że wykonywanie skryptów może być wyłączone.
Der Hochstapler

5

O ile rozumiem pytanie, chcesz, aby MongoDB miał określony rozmiar okna konsoli i wychodził po naciśnięciu Ctrl+ C. Odpowiedź jest dość prosta: użyj skrótu, aby go uruchomić.

Nie mam mongodpliku wykonywalnego, więc użyłbym perl.exejako przykładu. Po uruchomieniu z okna dialogowego Uruchamianie ( Windows+ R) rozmiar okna konsoli wynosiłby standardowy 80 × 25 z rozmiarem bufora dla 300 linii.

  1. Utwórz skrót do mongod(lub perlw moim przypadku).
  2. Kliknij skrót prawym przyciskiem myszy i wybierz Właściwości .
    1. Na karcie Skrót w polu Cel dodaj parametry do mongod.
    2. Pole Start in kontroluje początkowy katalog bieżący uruchomionego programu. Domyślnie będzie to katalog, w którym znajduje się plik .exe.
  3. Kliknij kartę Układ .
    1. Zmień rozmiar okna na 140 × 70.
      Właściwości skrótu, karta Układ
    2. Można zwiększyć wysokość o wielkości bufora ekranu do 1000 lub więcej, aby móc przejść do starszych wiadomości.
    3. Jeśli wyczyścisz okno Zezwól na pozycję systemu , możesz określić położenie okna konsoli na ekranie.
  4. Kliknij przycisk OK, aby zamknąć właściwości skrótu.

Teraz po kliknięciu tego skrótu okno konsoli będzie miało określony rozmiar. Po naciśnięciu przycisku Ctrl+ Caplikacja zostanie zamknięta, a okno zostanie zamknięte bez żadnych dodatkowych monitów.


Możesz także zmienić układ okna po uruchomieniu go z okna dialogowego Uruchom . Kliknij prawym przyciskiem myszy tytuł okna konsoli i kliknij Właściwości . Kliknij kartę Układ , dostosuj rozmiar okna i kliknij OK, aby zamknąć właściwości i natychmiast zastosować zmiany. (Jeśli okno zostało uruchomione ze skrótu, właściwości skrótu zostaną zaktualizowane).

Przy następnym uruchomieniu tej samej aplikacji rozmiar okna konsoli będzie magicznie tego samego rozmiaru. (Tym razem nie sprawdziłem, ale kiedyś działało).


Lokalizacja mongod.exenie jest ustalona. Zmieni się w zależności od wdrożenia aplikacji. Właśnie dlatego dążyłem do rozwiązania bezpośrednio przez konsolę. Kiedy umieszczam ścieżkę względną w polach katalogu docelowego lub roboczego dla skrótu, nie zaakceptuje ich :(
Der Hochstapler

@OliverSalzburg Czy próbowałeś ponownie rozpocząć partię ? Mam na myśli, że twoja partia zaczyna się przez start cmd /ki przekazuje dodatkowy parametr lub ustawia zmienną środowiskową. Druga instancja następnie zmienia rozmiar okna konsoli i uruchamia się mongod.exe.
Aleksiej Iwanow

Tak, próbowałem wielu rzeczy. Ale tak długo, jak zaangażowany jest plik wsadowy, rozwiązanie będzie cierpieć z powodu Terminate batch job (Y/N)?monitu: \ Właśnie skończyłem wdrażanie aplikacji otoki, aby to dla mnie rozwiązać.
Der Hochstapler

@OliverSalzburg Będzie to bardzo przydatne narzędzie. Myślałem również, że opakowanie będzie jedynym sposobem…
Aleksiej Iwanow

3

Domyślne ustawienia układu konsoli znajdują się tutaj w rejestrze:

[HKEY_CURRENT_USER\Console]

Możesz zmodyfikować te ustawienia i będą one dotyczyć WSZYSTKICH okien poleceń, które zostaną uruchomione, niezależnie od ścieżki. Niestety surowe wartości nie są przyjazne dla człowieka.

Aby ustawić je tak, jak chcesz, otwórz zwykłe okno cmd, a następnie edytuj ustawienia według własnych upodobań. Spójrz w rejestrze na powyższą ścieżkę i powinieneś zobaczyć podklucz w „Console” dla cmd.exe. Wyeksportuj ten klucz do pliku, zmień ścieżkę do powyższej i zaimportuj lub po prostu ręcznie skopiuj wartości z jednego do drugiego. Następnie możesz usunąć konkretny wpis cmd.exe. Teraz wszystkie otwarte okna poleceń będą używać zmodyfikowanych ustawień domyślnych.

Przydało mi się utworzenie kilku plików wpisów rejestru z moimi standardowymi ustawieniami domyślnymi, dzięki czemu mogę łatwo wrzucić je na nowy serwer, gdy uruchamiam RDP po raz pierwszy. Zrobiłem ustawienia dla dwóch rozmiarów, których zwykle używam.

W przypadku rozdzielczości 1024 x 768 (używam tego dla serwerów, do których zwykle uzyskuje się dostęp za pomocą narzędzia RDP dla wielu sesji):

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console]
"ScreenBufferSize"=dword:012c0050
"WindowSize"=dword:00190050
"WindowPosition"=dword:000a000a
"FontSize"=dword:000c0007
"FontFamily"=dword:00000030
"FontWeight"=dword:00000190
"FaceName"="Terminal"
"QuickEdit"=dword:00000001

Dla 1280 x 1024:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console]
"ScreenBufferSize"=dword:0bb800af
"WindowSize"=dword:004b00af
"WindowPosition"=dword:000a000a
"FontSize"=dword:000c0007
"FontFamily"=dword:00000030
"FontWeight"=dword:00000190
"FaceName"="Terminal"
"QuickEdit"=dword:00000001

0

Umieść Startpolecenie przed wywołaniem mongodb. Uważam, że to powinno to naprawić.


Nie, to otwiera MongoDB w nowym oknie konsoli. Kiedy start /bgo użyję, pozostawi otwarte okno konsoli po naciśnięciu Ctrl + C.
Der Hochstapler

0

Jeśli z przyjemnością uruchomisz plik wsadowy wraz z kilkoma małymi programami pomocniczymi, to tutaj opublikowałem kompletne rozwiązanie: W
jaki sposób plik wsadowy może uruchomić program i ustawić położenie i rozmiar okna?

Treść jak poniżej. . . .

Ten plik wsadowy wersji demonstracyjnej uruchomi program wiersza polecenia i ustawi pozycję oraz rozmiar okna konsoli wiersza polecenia. Ogólny motyw tej partii jest taki sam, jak w poprzednich dwóch rozwiązaniach (na stronie Przepełnienie stosu w linku powyżej), ale były pewne unikalne problemy i obejścia, które sprawiły, że to zadziałało - jest to okno wiersza polecenia obsługiwane przez CMD .EXE ”, a nie okno GUI, takie jak„ EXPLORER.EXE ”.

Przeczytaj wszystkie komentarze i opis w pliku wsadowym, aby uzyskać więcej informacji.

Zastosowane narzędzia:
1.   MonitorInfoView  autor: Nir Sofer (41 KB)
2.   NirCmd  autor: Nir Sofer (43 KB)
3.   GetPID  autor: Daniel Scheibli (280 KB)
4.   upx.exe  --- to program wiersza polecenia, którego będziemy używać w tej wersji demonstracyjnej; umieść go w tym samym katalogu, co plik wsadowy.
5. Plik wsadowy --- patrz poniżej

Zbierz wszystkie pięć plików do katalogu. To jest plik wsadowy, gotowy do uruchomienia w dowolnym systemie Windows.

To, co zrobi ta partia demonstracyjna, oprócz przedstawienia niestandardowego okna konsoli, będzie działać upx.exez przełącznikami wiersza polecenia--best -v -o getpids-compressed.exe getpids.exe. Zamierzamy skompresować nasze narzędzie „GetPID” do 88 KB ... Po uruchomieniu kliknij dwukrotnie pasek tytułowy tego okna konsoli, aby zobaczyć interesujące zjawisko; to okno konsoli zachowuje się jak GUI!

@echo off
setlocal enabledelayedexpansion enableextensions
pushd %~dp0%

REM ----- ADD SOME USEFUL INFORMATION TO THIS CONSOLE WINDOW TITLE.
for /f "tokens=3" %%A in ('getpids.exe') do set _PROCESS_ID_=%%A
title This batch file runs a command-line program and sets the position and size of its console window        (PROCESS ID = %_PROCESS_ID_%)

REM ********************** DESCRIPTION ************************************
REM ** This script opens a command-line program console window with specified
REM ** screen properties at the primary monitor (containing the taskbar).
REM ** The "X/Y position" and "W/H size" of the console window is auto-set by
REM ** this script and the monitor resolution is auto-calculated to suit.
REM ** 'MonitorInfoView.exe' is the helper tool used to capture the resolution
REM ** info of the monitor.
REM ** 'nircmd.exe' is the tool performing all the display trickery.
REM ** 'getpids.exe' is the helper tool used to capture the Process ID of the
REM ** working batch file, thus allowing us to identify which CMD.EXE host this
REM ** console window belongs to when looking at Task Manager.
REM **
REM ** To tweak this script, go to the code section named:
REM ** >>>>> USER INPUT/PREFERENCES ARE ALL SET HERE <<<<<
REM ***********************************************************************

REM ----- CLEAR ANY PREVIOUS JOB OUTPUTS IF THEY EXIST
if exist ~TMP.TXT type NUL > ~TMP.TXT

REM ----- OUTPUT THE PRIMARY MONITOR INFORMATION TO A TEXT FILE
MonitorInfoView.exe /hideinactivemonitors 1 /stext ~TMP.TXT

REM ----- ISOLATE THE RESOLUTION LINE, REMOVING ALL THE OTHER LINES IN THE TEXT FILE
for /f "delims=" %%A in ('type "~TMP.TXT" ^|find.exe /i "Maximum Resolution"') do echo %%A>~TMP.TXT

REM ----- GET THE RESOLUTION NUMBERS, AND SET THEM AS VARIABLES
for /f "tokens=3,4 delims=:X " %%A in ('type "~TMP.TXT"') do set _SCREENW_=%%A& set _SCREENH_=%%B


REM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
REM >>>>>>>>>> USER INPUT/PREFERENCES ARE ALL SET HERE [BEGIN] <<<<<<<<<<<<

REM ----- ----------------------------------------
REM ----- |COMMAND-LINE PROGRAM TO BE RUN:  FILE NAME (WITH EXTENSION)
REM ----- |
REM ----- | |IF PROG TO BE RUN IS 'CMD.EXE' (WINDOWS COMMAND PROCESSOR)
REM ----- | |ALSO READ THE NEXT COMMENTS ABOUT SETTING SWITCHES   

    set _MYPROGRAM_=upx.exe

REM ----- ----------------------------------------   
REM ----- |COMMAND-LINE PROGRAM TO BE RUN:  SWITCHES (TO BE PASSED TO THE PROGRAM)
REM ----- |
REM ----- | |YOU CAN LEAVE THIS VARIABLE WITH A BLANK VALUE IF RUNNING THE PROG WITHOUT ANY PARAMETERS
REM ----- | | 
REM ----- | | |IF THE VALUE CONTAINS THE CHARS  '|'  OR  '<'  OR  '>'  THIS BATCH WILL FAIL TO RUN !!!
REM ----- | | |
REM ----- | | | |YOU CAN APPEND EXTRA TEXT TO THE END OF THE COMMAND BY USING THE AMPERSAND CHARACTER '&'
REM ----- | | | | EXAMPLES:
REM ----- | | | | set _MYPROGRAMSWITCHES_=dir "%systemroot%\system32" /a/o/s/4 & this text will be ignored; useful for adding some inline comments.
REM ----- | | | | set _MYPROGRAMSWITCHES_=dir "%systemroot%\system32" /a/o/s/4         & this works too, and the extra blank spaces will also be ignored.
REM ----- | | | | 
REM ----- | | | | |IF PROG TO BE RUN IS 'CMD.EXE' (WINDOWS COMMAND PROCESSOR), PATH ARGUMENTS MUST POINT TO A SPECIFIC LOCATION
REM ----- | | | | |AND BE ABSOLUTE OR INCLUDE ENVIRONMENT VARIABLES, AND ALWAYS ENCLOSE PATHS IN QUOTES.
REM ----- | | | | | EXAMPLES:
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "C:\Folder With Spaces\File.txt"
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "C:\FolderWithoutSpaces\File.txt"
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "%SYSTEMROOT%\..\Folder With Spaces\File.txt"
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "%SYSTEMROOT%\..\FolderWithoutSpaces\File.txt"
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type %0                                       <<<<<<<this batch file (quotes are optional; the only exception to the rule)
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "%~dp0%\..\File.txt"                     <<<<<<<goes back one Dir from this batch file
REM ----- | | | | | set _MYPROGRAMSWITCHES_=type "%~dp0%\..\SomeFolder\File.txt"          <<<<<<<goes back one Dir from this batch file and then forwards into "SomeFolder"
REM ----- | | | | | set _MYPROGRAMSWITCHES_=dir "%systemroot%\system32" /a/o/s/4          <<<<<<<displays directory listing of the System folder. NOTE: 'dir' by itself and
REM ----- | | | | |                                                                                without a specific path argument will resolve to the folder of this batch file.

    set _MYPROGRAMSWITCHES_=--best -v -o getpids-compressed.exe getpids.exe      &// original is 280 KB, will compress down to 88 KB

REM ----- ----------------------------------------
REM ----- |COMMAND-LINE PROGRAM TO BE RUN:  DIRECTORY PATH (OF THE PROGRAM)
REM ----- | 
REM ----- | |YOU CAN LEAVE THIS VARIABLE WITH A BLANK VALUE IF THE PROG IS AT SAME LOCATION AS BATCH
REM ----- | |THIS VARIABLE WILL BE IGNORED IF THE PROG IS 'CMD.EXE'
REM ----- | | 
REM ----- | | EXAMPLES:
REM ----- | | set _MYPROGRAMDIR_=.\                               <<<<<<<relative path, program and batch in same directory
REM ----- | |                                                                  dot backslash *OR* dot (trailing backslash is optional).
REM ----- | | set _MYPROGRAMDIR_=%dp0%                            <<<<<<<relative path, program and batch in same directory
REM ----- | |                                                                  same locatiion as previous but using environment variable.
REM ----- | | set _MYPROGRAMDIR_=..\                              <<<<<<<relative path, program is back one directory from batch
REM ----- | |                                                                  dot dot backslash *OR* dot dot (trailing backslash is optional).
REM ----- | | set _MYPROGRAMDIR_=%dp0%\..                         <<<<<<<relative path, program is back one directory from batch
REM ----- | |                                                                  same as location as previous but using environment variable.
REM ----- | | set _MYPROGRAMDIR_=%SYSTEMROOT%\..\My Utilities     <<<<<<<relative path, program is back one directory from the Windows folder
REM ----- | |                                                                  and then forwards into the folder 'My Utilities'
REM ----- | | set _MYPROGRAMDIR_=C:\My Utilities\                 <<<<<<<absolute path, enclosing quotes are optional; trailing backslash is optional
REM ----- | |                                                                  same location as previous

    set _MYPROGRAMDIR_=

REM ----- ----------------------------------------
REM ----- |SET THE WANTED DIMENSIONS OF THIS CONSOLE WINDOW

    set /a _WINW_=(%_SCREENW_% / 2) + 250
    set /a _WINH_=(%_SCREENH_% / 2) + 150
    set /a _WINX_=(%_SCREENW_% - %_WINW_%) / 2
    set /a _WINY_=(%_SCREENH_% - %_WINH_%) / 2

REM ----- ----------------------------------------
REM ----- |STYLE THIS CONSOLE WINDOW   !!!IMPORTANT!!!
REM ----- |
REM ----- | |IF WE DO NOT USE THE 'MODE' COMMAND HERE ALONG WITH ITS 'COLS/LINES' VALUES THEN
REM ----- | |THE POSITIONING/SIZING OF THIS WINDOW BY 'NIRCMD.EXE' FURTHER DOWN WILL NOT WORK !!!
REM ----- | |
REM ----- | | |SOME COMMANDS WILL OUTPUT A LOT OF LINES AND AND THE CONSOLE DISPLAY WILL BE TRUNCATED
REM ----- | | |RUN THIS FOR AN EXAMPLE=====>   cmd.exe dir "%systemroot%\system32" /a/o/s/4   <=====
REM ----- | | |TO SOLVE THIS PROBLEM, SET THE 'LINES' VALUE OF 'MODE' TO A VERY HIGH NUMBER
REM ----- | | |THE MAXIMUM NUMBER IS 32000 (ON MY SYSTEM); 'MODE' WILL BE IGNORED IF THE NUMBER IS HIGHER !!!   

    color 0A
    mode.com con:cols=%_SCREENW_% lines=10000

REM ----- ----------------------------------------
REM ----- |DELETE THE TEMP TEXT FILE MADE BY 'MonitorInfoView.exe'
REM ----- |COMMENT OUT THE LINE IF YOU DON'T CARE ABOUT DELETING IT

    del /f /q ~TMP.TXT 2>nul >nul

REM >>>>>>>>>> USER INPUT/PREFERENCES ARE ALL SET HERE [END] <<<<<<<<<<<<<<
REM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


REM ----- RUN THE TASK . . .
nircmd.exe win setsize foreground %_WINX_% %_WINY_% %_WINW_% %_WINH_%
popd

if not defined _MYPROGRAMDIR_ set _MYPROGRAMDIR_=%~dp0
if "!_MYPROGRAMDIR_!" == "." set _MYPROGRAMDIR_=%~dp0
if "!_MYPROGRAMDIR_!" == ".\" set _MYPROGRAMDIR_=%~dp0
pushd %_MYPROGRAMDIR_%
if not exist %_MYPROGRAMDIR_% goto _SKIP_
set _CONVERT_PATH_="%CD%"
set _CONVERT_PATH_=%_CONVERT_PATH_:"=%
set _MYPROGRAMDIR_=%_CONVERT_PATH_%
:_SKIP_
popd

echo ===============================================================================
echo PROGRAM ..............: !_MYPROGRAM_!
if "!_MYPROGRAM_!"=="cmd.exe" (echo PROGRAM DIR ..........: %SYSTEMROOT%\system32) else (echo PROGRAM DIR ..........: !_MYPROGRAMDIR_!)
echo PROGRAM SWITCHES .....: !_MYPROGRAMSWITCHES_!
echo ===============================================================================

if "!_MYPROGRAM_!"=="cmd.exe" (goto _PROGRAM_IS_CMD_) else (goto _PROGRAM_IS_OTHER_)

:_PROGRAM_IS_CMD_
cd /d "%SYSTEMROOT%\system32"
!_MYPROGRAMSWITCHES_!
echo. & echo. & echo.
goto _END_

:_PROGRAM_IS_OTHER_ 
cd /d "!_MYPROGRAMDIR_!"
if "%CD%\!_MYPROGRAM_!" == "%CD%\" goto _ERRORMESSAGE_
if not exist "%CD%\!_MYPROGRAM_!" goto _ERRORMESSAGE_
"!_MYPROGRAMDIR_!\!_MYPROGRAM_!" !_MYPROGRAMSWITCHES_!
echo. & echo. & echo.
goto _END_

:_ERRORMESSAGE_
cls
color 4F
echo ===============================================================================
echo PROGRAM ..............: !_MYPROGRAM_!
echo PROGRAM DIR ..........: !_MYPROGRAMDIR_!
echo PROGRAM SWITCHES .....: !_MYPROGRAMSWITCHES_!
echo ===============================================================================
echo                        ^^!^^!^^!  E R R O R  ^^!^^!^^!
echo.
echo The program has failed to run; the path set by the above values does not exist.
echo Please exit this window and check the values you have set in this batch file.
echo.
echo This batch file is located here:
echo %0
echo. & echo. & echo. & echo. & echo.

:_END_

REM ----- CLEAR VARIABLE VALUES FROM MEMORY . . .
set _PROCESS_ID_=
set _SCREENW_=
set _SCREENH_=
set _MYPROGRAM_=
set _MYPROGRAMSWITCHES_=
set _MYPROGRAMDIR_=
set _WINW_=
set _WINH_=
set _WINX_=
set _WINY_=
set _CONVERT_PATH_=

REM ----- STOP THIS CONSOLE WINDOW FROM CLOSING   !!!IMPORTANT!!! . . .
REM ----- |
REM ----- | http://superuser.com/questions/306167/how-to-prevent-the-command-prompt-from-closing-after-execution
REM ----- | | by 'kitsu.eb' (April 26, 2014)
REM ----- | | | "My solution (just tested on Win7) is to add CMD as the last line in the batch file.
REM ----- | | |  This runs a nested command prompt that inherits the environment of its parent.
REM ----- | | |  That child shell holds the batch process open until you EXIT, at which point the
REM ----- | | |  batch has no child processes and also exits."
REM ----- | Comment . . .
REM ----- | | by me
REM ----- | | | "This is a workaround. You can't use PAUSE as the last command to stop this window from closing
REM ----- | | |  because the window will terminate after you press a key. While this batch is running, if you open
REM ----- | | |  Task Manager/Process Hacker/Process Explorer you will see an extra CMD.EXE child process running
REM ----- | | |  under the parent CMD.EXE of this batch file."
cmd.exe

Również tutaj dobrze byłoby skopiować odpowiednie treści.
slhck
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.