Текущий архив: 2002.03.28;
Скачать: CL | DM;
ВнизСохранение буфера обмена. Найти похожие ветки
← →
pusrg (2002-03-14 20:40) [0]Господа программисты, не подскажете как можно сохранить буфер обмена в независимости от формата, сделать с ним определенные действия и восстановить его?
← →
Song (2002-03-14 21:13) [1]Класс TClipBoard
см. методы у него.
← →
pusrg (2002-03-14 21:26) [2]To Song
Про методы этого класса я знаю...
Но тогда не подскажете какой из них использовать для сохранения абсолютно любых данных?
Если использовать метод assign, то непонятно какого типа должен быть обьект - хранитель данных из буфера. Типы ТPersistent, TClipBoard не проходят.
← →
pusrg (2002-03-15 14:15) [3]Мужики, неужели никто не знает как временно сохранить данные из буфера?
Если это задача в принципе не выполнима, так и напишите...
← →
digitman (2002-03-15 15:08) [4]выполнима, почему же нет ?)
1. вызовом EnumClipboardFormats() получаешь инф-цию обо всех форматах, доступных в БО. Запоминаешь их.
2. В цикле по всем полученным форматам получаешь их HGLOBAL-хэндлы вызовом GetClipboardData(). Получаешь размер блока глоб.хипа, распределенного под очеред.формат, выделяешь соотв. по размеру блок в лок.хипе своего процесса, блокируешь хэндл глоб.блока вызовом GlobalLock(), копируешь его содержимое любым способом в свой лок.блок, разблокируешь хэндл глоб.блока.
3. Очищаешь БО.
4. Пользуешься им как тебе вздумается.
5. В цикле по сохраненным форматам восстанавливаешь первонач.содержимое БО вызовами GlobalAlloc(), GlobalLock()/Unlock(), SetClipboarddata()
← →
MBo (2002-03-16 07:52) [5]Я делал сохранение/восстановление в/из файла, у digitman-а абсолютно все шаги расписаны.
← →
pusrg (2002-03-16 18:01) [6]To Digitmat, to MBo
Спасибо за Ваши отзывы!
Страницы: 1 вся ветка
Текущий архив: 2002.03.28;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.005 c