Можно ли внутри дэсктопного приложения отследить был ли сделан скриншот?
Скриншот сделанный на телефон ничем не отследите.
В общем случае это сделать невозможно, точно помню с помощью directx (наверняка и opengl/vulkan) можно получить прямой доступ к содержимому экрана или буферам видеокарты.

На stackexchange посоветовали повеситься на события и анализировать память, буквально всю, в т.ч. на наличие хеадеров jpeg/png/....

Т.е.запрет возможен только административными способами.