Конференция "WinAPI" » Возможно ли проверить существование HBITMAP? [D7, Win95/98, WinXP]
 
  • Студент (27.01.11 09:43) [0]
    Допустим наша функция принимает в качестве параметра HBITMAP...
    А HBITMAP это по сути указатель на что-то...

    Возможно ли как-нибудь проверить допустимое ли значение нам передано? Проверить существование HWND просто - IsWindow(), а с HBITMAP что делать?
  • MBo © (27.01.11 10:09) [1]
    >А HBITMAP это по сути указатель на что-то
    Не совсем так, это скорее некий индекс в таблице дескрипторов Windows

    А проверить... можно проверить на 0, потом вызвать какую-либо функцию типа GetBitmapDimensionEx, проанализировать возврат (и GetLastError, если понадобится)
  • CrytoGen (27.01.11 10:10) [2]
  • clickmaker © (27.01.11 11:09) [3]
    или GetObject + GetLastError
  • Студент (28.01.11 04:30) [4]
    Хм... Спасибо...)
    Будем пробовать...
  • Maksim V. © (28.01.11 20:21) [5]
    GetObjectType() = OBJ_BITMAP. :)
  • GrayFace © (10.02.11 12:42) [6]
    Зачем проверять? При неврном HBITMAP функция, скорее всего, и так вылетит, если Win32Check везде есть.
 
Конференция "WinAPI" » Возможно ли проверить существование HBITMAP? [D7, Win95/98, WinXP]
Есть новые Нет новых   [134431   +12][b:0][p:0]