Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1730 • Страница 10 из 87<  1 ... 7  8  9  10  11  12  13 ... 87  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Daemon
Так мне как бы и надо массив строк передавать :oops: . Вот только при попытке попользоватся наблюдается опять лажа. Ну да ладно - чёрт с ним(с си). Главное заработало.



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Вот тут ещё одна проблема возникла:
Пишу фронтэнд к консольной программе. Нужно как-то передать процессу "нажатие" комбинации Ctrl+C. Т.е. мне нужно прервать процесс, но корректно. Если я давлю процесс terminateprocess'ом то недоделанный результат программы нечитабелен, но если из консоли запустить и нажать Ctrl+C, то выполнение прерывается и недоконченная работа читается. Т.е. процесс перехватывает нажатие и корректно сам завершается. Как это сделать? Приведу участок (облегчённый) кода:
Код:
SECURITY_ATTRIBUTES sa;
sa.nLength = sizeof(sa);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;

HANDLE hRead, hWrite;
if (!CreatePipe(&hRead, &hWrite, &sa, 0)) return -1;

STARTUPINFO si;
memset(&si, 0, sizeof(si));

si.cb = sizeof(si);
si.dwFlags = STARTF_USESTDHANDLES;
si.hStdInput = NULL;
si.hStdOutput = NULL;
si.hStdError = hWrite;

PROCESS_INFORMATION pi;
memset(&pi, 0, sizeof(pi));

if (!CreateProcessW(NULL,L"ляля.exe", NULL, NULL,
   TRUE, CREATE_NO_WINDOW | IDLE_PRIORITY_CLASS, NULL, NULL, &si, &pi)){
      return -1;
   }
CloseHandle(hWrite);  // <--
DWORD dd;
char xxx[1000];

while(ReadFile(hRead,xxx,80,&dd,0))
{
   // Обрабатываем считанные данные
}

Я думал создать второй пайп в обратную сторону и толкать процессу в stdin символы. Но сдаётся мне что [Ctrl+C] не просто символ и таким образом его не переслать.

зы: Тоже самое надо и для кнопки Pause/Break для приостановки процесса.


 

Member
Статус: Не в сети
Регистрация: 14.03.2004
Откуда: Москва
mein Мжет быть просто это сообщения?
просто в том же unixе это сигналы

_________________
ФИЗТЕХ- рулез, ФАКИ - сила, Кванты тоже хорошо


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
nickyoz
А можно поподробнее? Сообщения насколько я знаю окнам направляются, но в моём случае окна не создаётся. Есть только хэндл процесса.


 

Member
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
есть строка "AEIOU", нужно проверить принадлежит ли ей некий символ, к примеру char symb1; Ведь есть вроде стандартная функция, но что-то найти не могу никак :( подскажите плз.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Lord_of_Darkness
char *strchr( const char *string, int c );
0 - если символа нет, иначе позиция первого найденного.


 

Member
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
mein большой сенкс, ато я со strpos тыркался, как в дельфе :) :insane:

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Member
Статус: Не в сети
Регистрация: 14.03.2004
Откуда: Москва
mein Можно и процессам направлять

_________________
ФИЗТЕХ- рулез, ФАКИ - сила, Кванты тоже хорошо


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
mein ctrl+c это не ^Z случаем? Что мешает выделить какой-нибудь служебный символ?

_________________
Ку ку


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
nickyoz писал(а):
mein Можно и процессам направлять

Какой функцией :oops: ?
Daemon писал(а):
mein ctrl+c это не ^Z случаем?

Нет, проверял - на [Shift+F6] - не реагирует. Это просто 26-ой символ, интерпретируемый некоторыми как конец.


 

Member
Статус: Не в сети
Регистрация: 20.01.2005
Откуда: Москва
Расскажите плиз.(или алгоритм дайте)(или ссылку дайте) об оптимизации методом Монтекарло.

_________________
всемудачи


 

Member
Статус: Не в сети
Регистрация: 17.04.2005
Никто не подскажет как выделить слово в тексте? Есть тестовый файл,успешно с него считываю и вывожу на экран, теперь вводим слово и необходимо выделить в тексте введенное слово... Как сделать? среда разработки Turbo C++ 3.0


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
eldarovich88
Не совсем ясна задача.
Например выведен текст. Курсор находится чють ниже. Вводим слово. По нажатию энтер очищаем экран и заново выводим текст по словам(нужные слова выделяя). Или после нажатия энтер "сканируем" экран на наличие нужного слова и его выделяем.
Или же вопрос был: как непосредственно выделить что-то на экране? :) . Я не помню точно названий функций, но кажется что-то типа SetTextAttr или чего-то похожего из conio.h. Но это нужно делать перед выводом. Я же люблю(любил :) ) пользоватся прямым выводом. Есть замечательные функции puttext и gettext - каждый символ представлен двумя байтами один из которых символ другой его атрибут(цвет и бэкграунд).


 

Member
Статус: Не в сети
Регистрация: 17.04.2005
mein
в условии задачи это не уточняется, просто чем проще тем лучше! Я думаю что так По нажатию энтер очищаем экран и заново выводим текст по словам(нужные слова выделяя), ща попробую почитать про строки и потыкаю conio.h...
Если не трудно, чиркни этот фрагмент кода про поиск слова и выделение


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
eldarovich88
щас черкануть не смогу. я бы посмотрел в сторону функции strstr для поиска слов в тексте.


 

Member
Статус: Не в сети
Регистрация: 17.04.2005
mein
да, поиск, в принципе, работает, теперь вот надо додуматься как выделить найденное слово


 

Народ нужна ваша помощь, короче вот
нужно написать временную функцию TickCount которая определяется в файле ticks.h и возвращает количество
1/60-х секунды со време ни запуска системы. Короче он должен найти время за которое произошел процедура.


 

Member
Статус: Не в сети
Регистрация: 24.12.2005
UzH, используй GetTickCount.


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
UzH непонятно, чего тебе написать нужно, что значит временная функция? И что конкретно ф-ция должна возвращать, время с запуска систему, или как?

_________________
Ку ку


 

короче парни отбой, уже все... конечно спасибо, что внимание обратили, но уже я должен эту поебень сдать


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1730 • Страница 10 из 87<  1 ... 7  8  9  10  11  12  13 ... 87  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan