WinAPI obtém o ícone do cursor do mouse
Eu quero pegar o ícone do cursor no Windows. Eu acho que a linguagem que eu uso não é muito importante aqui, então vou apenas escrever um pseudocódigo com funções WinAPI que estou tentando usar:
<code>c = CURSORINFO.new(20, 1, 1, POINT.new(1,1)); GetCursorInfo(c); #provides correctly filled structure with hCursor DrawIcon(GetWindowDC(GetForegroundWindow()), 1, 1, c.hCursor); </code>
Então esta parte funciona bem, ela desenha o cursor atual na janela ativa. Mas não é isso que eu quero. Eu quero obter uma matriz de pixels, então eu deveria desenhar na memória.
Estou tentando fazer assim:
<code>hdc = CreateCompatibleDC(GetDC(0)); #returns non-zero int canvas = CreateCompatibleBitmap(hdc, 256, 256); #returns non-zero int too c = CURSORINFO.new(20, 1, 1, POINT.new(1,1)); GetCursorInfo(c); DrawIcon(hdc, 1, 1, c.hCursor); #returns 1 GetPixel(hdc, 1, 1); #returns -1 </code>
Por que GetPixel () não retorna COLORREF? o que estou perdendo?
Eu não sou muito experiente com WinAPI, então provavelmente estou cometendo algum erro estúpido.