C28623
警告 C28623:未簽署的 GetMessagePos () 座標轉換。 使用 GET_X_LPARAM/GET_Y_LPARAM,而不是LOWORD/HIWORD
具有多個監視器的系統可以有負 x 座標和 Y 座標。 在這類系統上, GetMessagePos 可能會傳回負值。 不過,因為 LOWORD 和 HIWORD 會將座標視為不帶正負號的數量,所以不應該使用它們。
範例
PREfast 會報告下列範例的警告。
DWORD dw = GetMessagePos();
POINT ppt;
ppt.x = LOWORD(dw);
ppt.y = HIWORD(dw);
下列範例會避免錯誤。
DWORD dw = GetMessagePos();
POINT ppt;
ppt.x = GET_X_LPARAM(dw);
ppt.y = GET_Y_LPARAM(dw);