Я считаю, что вы правы, вы не можете полагаться на то, что HFONT безопасны для передачи через процессы.
'Причина, по которой я спрашиваю, состоит в том, что я видел, как HFONT передаются в другое приложение через PostMessage, и работают правильно, но я не думал, что они' должны '.'
Они не были переданы правильно, поэтому нет «предполагается». Хотя HFONT не гарантированно работают между процессами, они также не гарантируют, что они будут уникальными между процессами. «Arial» может иметь одно и то же значение HFONT в двух разностных процессах в определенный момент времени с определенной версией каждого приложения и может изменяться в любой момент (включая его использование на полпути!)
Это похоже на то, что я рисую, и у меня кончается оранжевая краска, которую я оставляю как 3-ю трубу на своей пасхальной ручке. Я мог бы дотянуться до твоей пасхи и схватить 3-й тупик ... но у меня нет гарантии, что он оранжевый ... У меня нет гарантии, что он даже содержит краску! Возможно, вы чистили зубы на Пасху сегодня ... упс!
Дескрипторы GDI похожи на число «3» в этом примере. Сегодня GDI может хранить трубки в одном и том же порядке на всех этапах. Возможно, некоторые из них будут в порядке, а некоторые нет (то есть оранжевые «сорта работает», но «зелёный пенопласт» разорен). Они могут быть в порядке на одном устройстве CE, но не на другом.
Как всегда, YMMV.