Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 189
от 09.09.2005, 14:54

Администратор:Калашников О.А.
В рассылке:Подписчиков: 192, Экспертов: 31
В номере:Вопросов: 4, Ответов: 5


Вопрос № 25762: Доброго времени суток. Подскажите как лучше обрабатывать сообщения (оконные или пользовательские) в неотображаемом классе (класс не наследует CDialog, CDocument, CView, CWnd и подобные классы). Этот класс обрабатывает соединение с СОМ портом в о...
Вопрос № 25778: как мне при помощи ifstream открыть файл и дочитать его до слова "startpatch"?...
Вопрос № 25796: Здравствуйте уважаемые эксперты! Возможно на Visual C++ 6.0 создать полноценный .lib файл, т.е. что бы он больше не от какого .lib файла не зависил? Если да то как? p.s. Я пытался менял все параметры компиляции, но всё равно он зависит от...
Вопрос № 25811: Здравствуйте! Функция system возвращает значения int, а если то, что ей передаётся воткнуть в cmd там может быть несколько строк ответа, например, команда dir возвращает содержимое, вот как мне это содержимое после вызова system поместить в масси...

Вопрос № 25.762
Доброго времени суток.
Подскажите как лучше обрабатывать сообщения (оконные или пользовательские) в неотображаемом классе (класс не наследует CDialog, CDocument, CView, CWnd и подобные классы). Этот класс обрабатывает соединение с СОМ портом в отдельном потоке и для технического и иногда необходимо передавать полученные данные. Пробовал в основном цикле обработки вставить PeekMessage(...) через пять минут работы программа вылитает пишет что поток получил задание на прекращения и просят сообщить команде разработчиков (т. е. ко мне), о потом пишет что программа обратилась к недопустимому адрессу. Когда убираю всё это дело тогда работает устойчиво столько сколько нужно. В другом потоке всё работает замечательно через GetMessage - но он выполняется только по запросам.Другие функции получения сообщений вешают поток (ждут сообщения).

Приложение:

Отправлен: 03.09.2005, 16:38
Вопрос задал: Максим Гаврилов (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Bob Johnson
Здравствуйте, Максим Гаврилов!
Попробуй дополнительный поток создать на основе класса CWinThread, возможно что-то не нраится самому MFC.
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 03.09.2005, 16:56


Вопрос № 25.778
как мне при помощи ifstream открыть файл и дочитать его до слова "startpatch"?
Отправлен: 03.09.2005, 21:24
Вопрос задал: BSODBSOD (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Кулиничев Максим Игоревич
Здравствуйте, BSODBSOD!
Все достаточно просто (см. приложение).
Объявляется объект типа ifstrem, например in (это поток вывода в файл).
Используя его метод open(char*,int) открывается нужный файл (например так как в приложении).
Затем проверка, удалось ли открыть файл?
После необходимо просмотреть весь файл по словам и проверить на совпадение с искомым.

Приложение:

Ответ отправил: Кулиничев Максим Игоревич (статус: 1-ый класс)
Отправлен: 04.09.2005, 18:55


Вопрос № 25.796
Здравствуйте уважаемые эксперты!
Возможно на Visual C++ 6.0 создать полноценный .lib файл, т.е. что бы он больше не от какого .lib файла не зависил?
Если да то как?
p.s. Я пытался менял все параметры компиляции, но всё равно он зависит от uuid.lib, oldnames.lib, libc.lib!
Отправлен: 04.09.2005, 08:21
Вопрос задал: Алексей Смуриков (статус: Практикант)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Bob Johnson
Здравствуйте, Алексей Смуриков!
Точно не уверен, подействует ли, но попробуй вот что - сделай def файл, в котором укажи в разделе export только те функции, что ты хочешь экспортировать, затем укажи его в параметрах lib.exe /DEF:файл. поставь там же ignore all def libs и ... попробуй :)
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 04.09.2005, 12:03
Оценка за ответ: 4
Комментарий оценки:
Спасибо за ответ! Попробую!

Отвечает: Кулиничев Максим Игоревич
Здравствуйте, Алексей Смуриков!
Попробуй использовать диррективу

#pragma comment ( lib, "libname.lib")

Перечислив таким образом все библиотеки от которых зависит твоя. Насколько я понимаю они должны включится в твою библиотеку.
Ответ отправил: Кулиничев Максим Игоревич (статус: 1-ый класс)
Отправлен: 05.09.2005, 07:27
Оценка за ответ: 5


Вопрос № 25.811
Здравствуйте!
Функция system возвращает значения int, а если то, что ей передаётся воткнуть в cmd там может быть несколько строк ответа, например, команда dir возвращает содержимое, вот как мне это содержимое после вызова system поместить в массив?
Отправлен: 04.09.2005, 12:30
Вопрос задал: nicholasal (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Jadd
Здравствуйте, nicholasal!
я тут приводил пару примеров как юзать ответ из доса. Ищи примеры работы с пайпами (CreatePipe). Получается что-то типа редиректа вывода в пайп и чтение из пайпа . Затем парсим и пихаем то, что нужно. Это если пишешь под винду. Уточни платформу.
---------
Если в сердце дверь закрыта, нужно в печень постучаться
Ответ отправил: Jadd (статус: Практикант)
Отправлен: 04.09.2005, 12:38
Оценка за ответ: 4
Комментарий оценки:
да, под винду


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.cplus
Отписаться
Вспомнить пароль

В избранное