Я хочу использовать эту функцию в своей программе на С#: когда пользователь делает Ctrl + C или копирует в любом месте (т.е. когда изменяется содержимое буфера обмена), моя программа получит уведомление и проверит, соответствовал ли контент определенным критерии, если это так, становятся активной программой, обрабатывают контент и т.д.
Я могу получить содержимое из System.Windows.Forms.Clipboard
, однако я не знаю, как отслеживать изменения содержимого из буфера обмена.
При использовании Windows Vista или более поздней версии используйте AddClipboardFormatListener
, как в ответе Джона Кноллера, для Windows XP я должен использовать более старый, более хрупкий API SetClipboardViewer
, как в принятом ответе.