Здравствуйте. Подскажите как работать с WM_PRINT, WM_PRINTCLIENT Желательно с примером желательно на С++ или Pascal Только не отсылайте к Фен Юаню )
Delphi: >Как работать с WM_PRINT [...] >Только не отсылайте к Фен Юаню ) Обязательно отошлю: "Window Contents Capturing using WM_PRINT Message" http://www.fengyuan.com/article/wmprint.html А вы боялись, что к "Windows Graphics Programming" ?
zxm Это зависит не от винды, а от того, обрабатывается ли приложением сообщение WM_PRINTCLIENT или нет. Само сообщение можно посылать хоть в 95й винде. ЗЫ: Если вопрос относился к перехвату BeginPaint в статье Feng Yuan, то там в конце написано "Only tested on Windows 2000 machine".
А окна обычно обрабатывают это сообщение? Сформулирую вопрос иначе: Мож ли как-то гарантировано получить изображение спрятаного окна в win 200/xp/2003 ?
Для XP: http://www.catch22.net/source/zips/wincap3.zip "Howto capture the contents of a Hidden Window", "based on the work by Feng Yuan". Однако тоже не без проблем... >А окна обычно обрабатывают это сообщение? Вам надо выработать рефлекс на слово "сообщение": хвататься за MSDN и Spy++ Вот что вы могли бы и сами извлечь из MSDN: WM_PRINT -> Remarks -> >The DefWindowProc function processes this message based on which drawing option is specified: [...] > if PRF_CLIENT is specified, send the window a WM_PRINTCLIENT message => WM_PRINTCLIENT -> Remarks -> >Windows that can be used anywhere in the system, such as controls, should process this message. >It is probably worthwhile for other windows to process this message as well because it is relatively easy to implement. >Сформулирую вопрос иначе: Мож ли как-то гарантировано получить изображение спрятаного окна в win 200/xp/2003 ? В общем случае на нынешних виндах - боюсь, не мож.