Ограничение размера буфера обмена - PullRequest
40 голосов
/ 24 августа 2009

Есть ли ограничение на размер данных, которые можно скопировать в буфер обмена? Я использую VB6 и мне нужно скопировать блоки данных в буфер обмена.

Ответы [ 3 ]

30 голосов
/ 22 апреля 2011

Приложения вызывают GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE), чтобы выделить память для данных, которые будут сохранены в буфере обмена, и сделать их доступными для других приложений. Для 32-разрядных приложений GlobalAlloc может выделять блоки размером до 2 ГБ или до объема виртуальной памяти, которую имеет ПК, в зависимости от того, что меньше. Буфер обмена Windows не накладывает никаких других ограничений размера.

2 голосов
/ 24 августа 2009

Большая часть данных копируется в качестве ссылки, а не сами данные, так что вы можете скопировать практически все что угодно. Хотя текст на самом деле копируется, и, насколько я знаю, объем данных ограничен объемом доступной оперативной памяти. Помните это, если vb6 может справиться с этим, я уверен, что буфер обмена может справиться с этим.

0 голосов
/ 24 августа 2009

Зависит от объема памяти в системе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...