текстом послать /?
короче, любой символ отправленный через врайтфайл уходит как команда, а не как символ
WriteFile Ничего не знает про символы и команды. Он тупо шлет байтики как есть
Это я знаю. Вопрос в том, как слать не байтики, а команды
Узнать нужные байтики и их послать (если вы точно знаете, что терминал поддерживает)
Там не байтики шлются а сигнал через NtDeviceIoControlFile
если в терминале включена поддержка ESC последовательностей, то они прекрасно шлются прямо в тексте
еслим включена тогда можно попробовать отправиить /#3 но сам не пробовал и не уверен что получится
с экранированием через слэш пробовал?
с обоими слешами пробовал
Кросивое. А байтики какие?
#include <stdio.h> int main(void) { // Red text and blue background puts("\x1b[31m\x1b[44mHello, World"); // Reset colors to defaults printf("\x1b[0m"); }
Это WindowsTerminal такое умеет или cmd.exe тоже так всегда умело? Я про цвета
любая коонсоль так умеет цветами раскрашиваться
Я про кодирование цвета в тексте Именно про этот формат
это стандартные "escape sequences" https://dvmn.org/encyclopedia/python_strings/ansi-codes/
конкретно это был терминал. Но старорежимный conhost тоже умеет, возможно придется в реджистри включить
ты отправь туда контрл ц, или контрл кю, или что там для самоубийства программы нужно
не проще просто процесс убить, чем развлекаться с консолью?
Мне не надо процесс убивать. Мне надо отправить прерывание команды. Если прервать процесс, то он продолжит висеть запущенным на сервере
ну гуглите. например https://blog.codetitans.pl/post/sending-ctrl-c-signal-to-another-application-on-windows/
зачем гуглить если я ему уже все и так рассказал? :)))))))))))
под WIn я перестал в ту сторону смотреть после зело глючного ANSI.SYS потому вопрос: cmd.exe когда-то научили понимать ANSI-последовательности? Выходит, проспал сей момент. А с какой примерно версии?
Это который был досовским костылем в прошлом веке?
Слушай, ну не помню...
пойду поищу, любопытно ж ;-)
Обсуждают сегодня