Вопрос № 65522: Здрвствуйте. Беда такая: В программе есть модальный диалог и в нем окно редактирования. Самое примитивное. Все работает, только при нажатии на "Enter"(например ,чтобы перевести курсор на следующую строку) окно диалога закрывается. Может, у ...Вопрос № 65538: Привет всем!
Подскажите плиз кто знает выход из такой ситуации.
Система XP, файл открыт в текущем процессе, но при вызове
в этом процессе некоторой функции (исходного текста, которой у
меня нет) произошла системная ошибка.
При по...Вопрос № 65617: Здравствуйте уважаемые эксперты.Привет всем!
Вопрос:
1.Можно ли написать обработчик событий открытие кокогото
определенного файла?(например:С:/BCD/001.bmp)
2.Можно ли написать программу который определил использование
001.bmp др...
Вопрос № 65.522
Здрвствуйте. Беда такая: В программе есть модальный диалог и в нем окно редактирования. Самое примитивное. Все работает, только при нажатии на "Enter"(например ,чтобы перевести курсор на следующую строку) окно диалога закрывается. Может, у кого была такая уха? Подскажите пожалуйста. Спасибо.
Приложение:
Отправлен: 04.12.2006, 17:33
Вопрос задал: Lameruga (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Tek
Здравствуйте, Lameruga!
Дело в том что в созданом по умолчанию ресурсе-диалоге на кнопке OK стоит флажок "Defaul button" - в результате этого стандартный командный акселератор ID_OK (Enter то бишь) - отрабатывает как нажатие на эту кнопку.
Выходы- снять галку или переопределить обработчик ID_OK
--------- WinApi - жутко неудобные костыли, MFC и VCL - немногим полезнее, но ничего лучше еще не создано (C)Почти Уинстон Черчилль :)
Ответ отправил: Tek (статус: 2-ой класс)
Ответ отправлен: 04.12.2006, 17:57 Оценка за ответ: 5 Комментарий оценки: Спасибо.
Отвечает: Григорьеа Владимир Дмитриевич
Здравствуйте, Lameruga!
Немного подправлю,возможно ошибаюсь,не ID_OK а IDOK.
Ответ отправил: Григорьеа Владимир Дмитриевич (статус: 1-ый класс)
Ответ отправлен: 04.12.2006, 18:08 Оценка за ответ: 5 Комментарий оценки: Спасибо
Отвечает: Gladiator
Здравствуйте, Lameruga!
Если глянуть в Windows.pas, то мы увидим следующее:
{$EXTERNALSYM IDOK}
IDOK = 1; ID_OK = IDOK;
Следовательно, не принципиально, ID_OK или IDOK.
Ответ отправил: Gladiator (статус: 6-ой класс)
Ответ отправлен: 05.12.2006, 08:08 Оценка за ответ: 5 Комментарий оценки: Спасибо.
Вопрос № 65.538
Привет всем!
Подскажите плиз кто знает выход из такой ситуации.
Система XP, файл открыт в текущем процессе, но при вызове
в этом процессе некоторой функции (исходного текста, которой у
меня нет) произошла системная ошибка.
При помощи конструкции __try{}__except(){} ее удалось обойти,
но эта функция открыла файл (имя известно). Как закрыть все
хэндлы которые открыла эта функция? В частности как закрыть
хэндл этого файла?
Спасибо за ответы!
Отправлен: 04.12.2006, 20:09
Вопрос задал: kool (статус: 2-ой класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Григорьеа Владимир Дмитриевич
Здравствуйте, kool!
CloseHandle() пробовал?
Ответ отправил: Григорьеа Владимир Дмитриевич (статус: 1-ый класс)
Ответ отправлен: 04.12.2006, 20:20 Оценка за ответ: 4 Комментарий оценки: Ну блин спасибо! Хэндл-то неизвестен! Следите за фразой "(исходного текста, которой у меня нет) ". Хэндл то и надо узнать.
Вопрос № 65.617
Здравствуйте уважаемые эксперты.Привет всем!
Вопрос:
1.Можно ли написать обработчик событий открытие кокогото
определенного файла?(например:С:/BCD/001.bmp)
2.Можно ли написать программу который определил использование
001.bmp другой программой?
(Написать программу 1.exe и можно была
узнать другая- написанная кемто другим человеком 2.exe вызвал (использует) 001.bmp
Заранее блогодарен.
Отвечает: John Paramol
Здравствуйте, Zeynolov Sabir !
Для обработки момента открытия файла под Windows можно перехватывать CreateFile. Например, мой антивирус так делает. Есть код на Delphi: http://slow.alfamoon.com/sources/cfh.rar
--------- 1=2, at values 1 large enough
Ответ отправил: John Paramol (статус: 4-ый класс)
Ответ отправлен: 10.12.2006, 06:01