При этом мне только одну программу надо запускать, а не 2.
program1.exe
start "" program2.exe
С Windows такое почему-то не работает, cmd.exe всё равно дожидается выполения фоновых процессов почему-то
(start "" cmd.exe /k) && timeout /t 30
Нужно как раз не ждать завершения.
:: process1.bat
start "" cmd.exe /c process2.bat
program1.exe
:: process2.bat
timeout /t 2
program2.exe
ну должен же быть процесс, который держит сокет для прослушивания
Результат:
"RAM= GB"
set /a
findstr /?
set /?
for /?
setlocal /?
позволю себе спросить ещё вот что: можно ли выравнять адрес до ближайшей к нему степени двойки (в большую сторону)? 1000 -> 1024, 3000 ->4096 и т.д.
addr = (addr | (alignment - 1)) + 1;
cl <имя вашего cpp файла>
Тогда попутные вопросы по приведенному примеру с
cmd /c '(start "" cmd.exe /k) && timeout /t 30'
После запуска второго окна cmd команда timeout стартует сразу? Что происходит после того как timeout закончится? Остается висеть первое окно cmd?
Если добавить еще команду exit после timeout будет так же?
Вы писали, что функция process() выполняет команду в cmd.exe, т.е. судя по всему она сама запускает cmd.
Передав в process() вышеприведенную строку в итоге, видимо получилось что-то вроде:
Так что, возможно, одна cmd /c лишняя.
В менеджере задач винды на вкладке Детально, можно добавить дополнительный столбец с командной строкой запуска и там можно увидеть какая конструкция в итоге получается на выходе из process().