Как отслеживать изменения буфера обмена в фоновом режиме с помощью C ++

Мне нужно обработать содержимое буфера обмена в фоновом приложении.

Как я могу это сделать?

Мне нужно событие, которое будет вызываться каждый раз, когда меняется буфер обмена. Неважно, из какого приложения копируется.

Я знаю функцию для чтения и записи, такую ​​какGetClipboardData() а такжеSetClipboardData().

Есть идеи, как это сделать в C ++?

Заранее спасибо!