Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Save Clipboard [D7, Win95/98, WinXP]


Jay1982 ©   (2005-02-11 12:23:00) 

Использую свой программой буфер обмена, но при этом не хотелось бы его затирать. Куда его лучше временно сохранить, и если не сложно в кратце как его туда сохранить, а потом от туда восстановить?


Jay1982   (2005-02-11 14:39:00) [1]

VMcL ©   (11.02.05 14:02) [5]
Делаю так:

var
 h: HWND;
 p: Pointer;

h := Clipboard.GetAsHandle(CF_...);
p := GlobalLock(h);

p получается = nil, хотя если ставить p: PChar, и в буфере текст, то нормально работает. Почему же нельзя так сделать с поитер?


VMcL   (2005-02-11 14:02:00) [2]

>> Jay1982 ©   (11.02.05 13:17) [3]

> где полученные данные лучше хранить, ведь они могуд быть и рисунком, и текстом...

В динамическом массиве байт, например.


MBo   (2005-02-11 13:59:00) [3]

> где полученные данные лучше хранить
В файле, если сохранять надолго.
> ведь они могуд быть и рисунком, и текстом...
перед каждым куском данных ClipBoardFormat записывать


Jay1982   (2005-02-11 13:17:00) [4]

Vit@ly ©   (11.02.05 12:47) [2]
Я сохраняю данных скопированные с контрола чужой программы, т.е. через клипбоард
MBo ©   (11.02.05 12:39) [1]
А где полученные данные лучше хранить, ведь они могуд быть и рисунком, и текстом...


Vit@ly   (2005-02-11 12:47:00) [5]

Странно. Вроде буфер обмена для того и существует чтобы его затирать. Почему бы сразу не "туда сохранить  временно" куда необходимо.


MBo   (2005-02-11 12:39:00) [6]

OpenClipBoard
EnumClipboardFormats
GetClipboardData/ SetClipboardData
GlobalLock/GlobalUnlock


Наверх

Титульная страница Поиск, карта сайта Написать письмо