簡體   English   中英

我怎么知道它是有效的gdi區域句柄?

[英]How do I know it's a valid gdi region handle?

或其他gdi手柄,例如筆刷。 我怎么知道這是有效的?

切勿陷入可能握住無效手柄的情況。 如有必要,在調用DeleteObject()之后將句柄設置為NULL,這樣就很明顯了。 假設由於傳遞了錯誤的句柄,GDI函數將為您提供FALSE返回值是不安全的。

答案是:您從哪里得到的?

簡而言之,就像藝術一樣:您怎么知道它是真實的,而不是假的? 有一些“啟發式”方法,但是唯一可行的方法是知道它從哪里來。

因此,關於GDI區域:您應該只信任GDI函數返回的那些區域句柄。

:)

嘗試GetObject()GetObjectType() 如果對象句柄無效,則它們應返回NULL。

我可以看到您想在哪里使用它進行調試。 在一個完美的世界中,我們跟蹤對象並始終知道它們在哪里。

我們的世界不是一個完美的世界。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM