- Раймонд Чен від Microsoft пояснює, що у Win32 існує концепція власника буфера обміну.
- Власник буфера обміну отримує закодоване повідомлення, коли хтось запитує дані з буфера обміну.
- Візуалізація затримки дозволяє користувачеві відкласти створення складних даних буфера обміну.
- У цій статті ви можете дізнатись, за яких обставинзміни власності буфера обміну.
У недавньому дописі блогу Microsoft Реймонд Чен від Microsoft пояснює всім користувачам, як саме відстежується право власності на буфер обміну Windows у Win32.
Ця інформація може виявитись безцінною для деяких із більш захоплених та досвідчених користувачів Windows, оскільки ми впевнені, що ви можете погодитися.
Відстеження права власності на буфер обміну Windows у Win32
Як деякі з вас можуть знати, у Win32 існує концепція власника буфера обміну. Призначене правило всього цього полягає в тому, що власник буфера обміну насправді є тим вікном, яке створило дані, що зараз містяться в буфері обміну.
У цій публікації, Чень також пояснює конкретну схему використання для розміщення даних у буфері обміну. Він згадує, що власник буфера обміну отримує закодоване повідомлення, коли хтось запитує дані з буфера обміну, які були встановлені як відкладені.
Ці кодовані повідомлення також отримуються як частина послідовності знищення вікна, якщо він все ще є власником буфера обміну на момент його знищення.
Таким чином, рендерінг із затримкою дозволяє користувачеві відкласти створення складних даних буфера обміну до точки, яку він запитує.
Дотримання правил має першорядне значення
Раймонд Чен згадує той факт, що при виконанні цього процесу дуже важливо дотримуватися певних правил, і зазначає, що насправді це роблять не всі.
Ми можемо це зрозуміти, бачачи, як деякі програми відкривають буфер обміну з метою додати дані, замість того, щоб взагалі замінити вміст.
Ще за часів 16-розрядної Windows система припускала, що програми були чесними і грали за правилами загального блага.
Він продовжує, пояснюючи, що цей сценарій бонусних даних буфера обміну створює проблему, оскільки є лише один власник буфера обміну, але зараз два Windows, які співпрацювали над передачею даних у буфер обміну.
Право власності на буфер обміну змінюється лише за цих обставин, як пояснив Чень:
- Коли порожній буфер обміну команда розгорнута, поточний відкривач буфера обміну стає власником буфера обміну.
- Коли власник буфера обміну знищений, власник буфера обміну скидає значення до нуля.
Єдиним логічним висновком тут буде те, що власник буфера обміну може бути підсумований як вікно, яке нещодавно викликало пусту команду клавіатури, якщо вона все ще існує.
Всю цю корисну інформацію можна переглянути, прочитавши повну статтю, надіслану в блозі Microsoft.
Яка ваша думка щодо методів, представлених співробітником Microsoft? Повідомте нас про це у розділі коментарів нижче.