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

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


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


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

Выпуск № 316
от 29.07.2003, 10:10

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 964
Отправлено ответов: 2163
Активность: 224.3 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Avl2k
Статус: Профессиональный
Общий рейтинг: 124.81
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 956. Visual C++ 6. В моем приложении (Win32 Application) по событию прорисовки вызывается ф-ция OnPaint(.... (ответов: 1)
Вопрос № 958. Уважаемые эксперты! Помогите разобраться.Вроде все правильно и Clipboard не пустой,но моей строки та... (ответов: 1)
Вопрос № 959. Здравствуйте, уважаемые эксперты! Подскажите pls как с помощью редактора ресурсов среды разрабо... (ответов: 1)

Вопросов: 3, ответов: 3


 Вопрос № 956

Visual C++ 6.
В моем приложении (Win32 Application) по событию прорисовки вызывается ф-ция OnPaint(...). Ее прототип в отдельном header-файле, а сама она в отдельном файле .cpp. Минут через 7 работы пропадают все созданные кисти и перья, остаются те, что поумолчанию. Преподаватель не нашел ошибок, и на их машинах такого глюка не было. Может виновата студия (у них VS 7)?
Но у моего соседа студия ставилась с моих дисков, а у него программка тоже не глюкавит?
Код ф-ции прилагаю. Заранее спасибо!


Приложение:


Вопрос отправлен: 24.07.2003, 14:20
Отправитель: NJ

[Следующий вопрос >>] [Список вопросов]

Отвечает Avl2k

Приветствую Вас, NJ!
А что значит пропадают, они ведь вроде у Вас создаются и сразу удаляются. Если они перестают создаваться, то это говорит об утечке GDI ресурсов (иконки, битмапы, фонты, pen'ы, brush'ы и т.д.), причем видимо не в этой функции.
И вряд ли такое поведение зависит от VS, скорее от операционной системы. Возможно, на тех машинах, где глюка "не было", установлена NT/2000/XP, а на Вашей Win9x - под NT максимальное количество GDI ресурсов больше, поэтому утечки видны хуже. Либо на Вашей машине установлена просто глючная винда, тогда надо попробовать переставить. В общем, можно только предполагать. Посмотрите внимательно остальной код программы - может быть утечки там?
С уважением, Avl2k.

Ответ отправлен: 25.07.2003, 10:37
Отправитель: Avl2k


 Вопрос № 958

Уважаемые эксперты!
Помогите разобраться.Вроде все правильно и Clipboard не пустой,но моей строки там нет.
Спасибо.


Приложение:


Вопрос отправлен: 25.07.2003, 19:37
Отправитель: Yuriy (g.u@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Avl2k

Доброе время суток, Yuriy!
Вот так работает:
void SetTextToClipboard( const std::string& text, LCID lcid = LOCALE_USER_DEFAULT )
{
if( ::OpenClipboard( NULL ) )
{
::EmptyClipboard();
// locale
HGLOBAL hMem = ::GlobalAlloc( 0, sizeof( LCID ) );
*(LCID*)GlobalLock( hMem ) = lcid;
GlobalUnlock( hMem );
SetClipboardData( CF_LOCALE, hMem );
// text
hMem = ::GlobalAlloc( 0, text.length() + 1 );
memcpy( (char*)::GlobalLock( hMem ), text.c_str(), text.length() + 1 );
::GlobalLock( hMem );
SetClipboardData( CF_TEXT, hMem );
::CloseClipboard();
}
}
С уважением, Avl2k.

Ответ отправлен: 28.07.2003, 13:18
Отправитель: Avl2k


 Вопрос № 959

Здравствуйте, уважаемые эксперты! Подскажите pls как с помощью редактора
ресурсов среды разработки VC++ или Delphi достать иконки из библиотек
(*.dll) иконок или из exe-шника и какова технология создания библиотек
иконок. Только pls не предлагайте воспользоваться другими программами для
импорта ресурсов. А что с редактор ресурсов может работать с *.exe и *.dll
и одалживать у них ресурсы известно точно, только не известно как.
Заранее благодарен 1!



Вопрос отправлен: 26.07.2003, 10:04
Отправитель: 1 (privat-soap@list.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Avl2k

Приветствую Вас, 1!
Ничего сложного: нажимаете Ctrl+O (File/Open), в комбике Files of type выбираете Executable Files, в комбике Open as выбираете Resources, выбираете нужный файл - вот и все. Ну, а после этого выбираете нужный ресурс и с помощью технологии Copy&Paste...
С уважением, Avl2k.

Ответ отправлен: 28.07.2003, 10:45
Отправитель: Avl2k



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


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


Получить ответов:


 Выбор рассылки

Программисту
Assembler (32)
C / C++ (23)
Perl (4)
Builder / Delphi (18)
Pascal (22)
Basic / VBA (11)
Java / JavaScript (12)
PHP (9)
Криптография (8)
WinAPI (13)
Пользователю
Windows 95/98/Me (48)
Windows NT/2000/XP (44)
"Железо" (39)
Поиск информации (26)
Администратору
Windows NT/2000/XP (25)
Linux / Unix (10)
Юристу
Гражданское право (11)
Семейное право (6)
Трудовое право (9)
КоАП (5)

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




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное