BOOL = Intrinsic("BOOL", "%i")
+LPLONG = Pointer(LONG)
+LPWORD = Pointer(WORD)
+LPDWORD = Pointer(DWORD)
+LPBOOL = Pointer(BOOL)
+LPSIZE = LPDWORD
+
+LPSTR = String
+LPWSTR = String
+
LARGE_INTEGER = Intrinsic("LARGE_INTEGER", "0x%llx")
HRESULT = Alias("HRESULT", Int)
PVOID = Intrinsic("PVOID", "%p")
+LPVOID = PVOID
HANDLE = Intrinsic("HANDLE", "%p")
HWND = Intrinsic("HWND", "%p")
HDC = Intrinsic("HDC", "%p")
(BYTE, "Data4[6]"),
(BYTE, "Data4[7]"),
])
+LPGUID = Pointer(GUID)
#REFGUID = Alias("REFGUID", Pointer(GUID))
REFGUID = Alias("REFGUID", GUID)
#REFIID = Alias("REFIID", Pointer(IID))
REFIID = Alias("REFIID", IID)
+CLSID = Alias("CLSID", GUID)
+#REFCLSID = Alias("REFCLSID", Pointer(CLSID))
+REFCLSID = Alias("REFCLSID", CLSID)
+
LUID = Struct("LUID", [
(DWORD, "LowPart"),
(LONG, "HighPart"),
(LONG, "x"),
(LONG, "y"),
))
+LPPOINT = Pointer(POINT)
RECT = Struct("RECT", (
(LONG, "left"),
(LONG, "right"),
(LONG, "bottom"),
))
+LPRECT = Pointer(RECT)
PALETTEENTRY = Struct("PALETTEENTRY", (
(BYTE, "peRed"),
(BYTE, "peBlue"),
(BYTE, "peFlags"),
))
+LPPALETTEENTRY = Pointer(PALETTEENTRY)
RGNDATAHEADER = Struct("RGNDATAHEADER", [
(RGNDATAHEADER, "rdh"),
#(Char, "Buffer[1]"),
])
+LPRGNDATA = Pointer(RGNDATA)
IUnknown = Interface("IUnknown")