|
1 | 1 | # The most useful windows datatypes |
2 | | -import ctypes.util |
| 2 | +import ctypes |
3 | 3 |
|
4 | 4 | BYTE = ctypes.c_ubyte |
5 | 5 | WORD = ctypes.c_ushort |
@@ -102,84 +102,75 @@ def __repr__(self): |
102 | 102 | ################################################################ |
103 | 103 | # Some important structure definitions |
104 | 104 |
|
105 | | -@ctypes.util.struct |
106 | | -class RECT: |
107 | | - left: LONG |
108 | | - top: LONG |
109 | | - right: LONG |
110 | | - bottom: LONG |
| 105 | +class RECT(ctypes.Structure): |
| 106 | + _fields_ = [("left", LONG), |
| 107 | + ("top", LONG), |
| 108 | + ("right", LONG), |
| 109 | + ("bottom", LONG)] |
111 | 110 | tagRECT = _RECTL = RECTL = RECT |
112 | 111 |
|
113 | | -@ctypes.util.struct |
114 | | -class _SMALL_RECT: |
115 | | - Left: SHORT |
116 | | - Top: SHORT |
117 | | - Right: SHORT |
118 | | - Bottom: SHORT |
| 112 | +class _SMALL_RECT(ctypes.Structure): |
| 113 | + _fields_ = [('Left', SHORT), |
| 114 | + ('Top', SHORT), |
| 115 | + ('Right', SHORT), |
| 116 | + ('Bottom', SHORT)] |
119 | 117 | SMALL_RECT = _SMALL_RECT |
120 | 118 |
|
121 | | -@ctypes.util.struct |
122 | | -class _COORD: |
123 | | - X: SHORT |
124 | | - Y: SHORT |
| 119 | +class _COORD(ctypes.Structure): |
| 120 | + _fields_ = [('X', SHORT), |
| 121 | + ('Y', SHORT)] |
125 | 122 |
|
126 | | -@ctypes.util.struct |
127 | | -class POINT: |
128 | | - x: LONG |
129 | | - y: LONG |
| 123 | +class POINT(ctypes.Structure): |
| 124 | + _fields_ = [("x", LONG), |
| 125 | + ("y", LONG)] |
130 | 126 | tagPOINT = _POINTL = POINTL = POINT |
131 | 127 |
|
132 | | -@ctypes.util.struct |
133 | | -class SIZE: |
134 | | - cx: LONG |
135 | | - cy: LONG |
| 128 | +class SIZE(ctypes.Structure): |
| 129 | + _fields_ = [("cx", LONG), |
| 130 | + ("cy", LONG)] |
136 | 131 | tagSIZE = SIZEL = SIZE |
137 | 132 |
|
138 | 133 | def RGB(red, green, blue): |
139 | 134 | return red + (green << 8) + (blue << 16) |
140 | 135 |
|
141 | | -@ctypes.util.struct |
142 | | -class FILETIME: |
143 | | - dwLowDateTime: DWORD |
144 | | - dwHighDateTime: DWORD |
| 136 | +class FILETIME(ctypes.Structure): |
| 137 | + _fields_ = [("dwLowDateTime", DWORD), |
| 138 | + ("dwHighDateTime", DWORD)] |
145 | 139 | _FILETIME = FILETIME |
146 | 140 |
|
147 | | -@ctypes.util.struct |
148 | | -class MSG: |
149 | | - hWnd: HWND |
150 | | - message: UINT |
151 | | - wParam: WPARAM |
152 | | - lParam: LPARAM |
153 | | - time: DWORD |
154 | | - pt: POINT |
| 141 | +class MSG(ctypes.Structure): |
| 142 | + _fields_ = [("hWnd", HWND), |
| 143 | + ("message", UINT), |
| 144 | + ("wParam", WPARAM), |
| 145 | + ("lParam", LPARAM), |
| 146 | + ("time", DWORD), |
| 147 | + ("pt", POINT)] |
155 | 148 | tagMSG = MSG |
156 | 149 | MAX_PATH = 260 |
157 | 150 |
|
158 | | -@ctypes.util.struct |
159 | | -class WIN32_FIND_DATAA: |
160 | | - dwFileAttributes: DWORD |
161 | | - ftCreationTime: FILETIME |
162 | | - ftLastAccessTime: FILETIME |
163 | | - ftLastWriteTime: FILETIME |
164 | | - nFileSizeHigh: DWORD |
165 | | - nFileSizeLow: DWORD |
166 | | - dwReserved0: DWORD |
167 | | - dwReserved1: DWORD |
168 | | - cFileName: CHAR * MAX_PATH |
169 | | - cAlternateFileName: CHAR * 14 |
170 | | - |
171 | | -@ctypes.util.struct |
172 | | -class WIN32_FIND_DATAW: |
173 | | - dwFileAttributes: DWORD |
174 | | - ftCreationTime: FILETIME |
175 | | - ftLastAccessTime: FILETIME |
176 | | - ftLastWriteTime: FILETIME |
177 | | - nFileSizeHigh: DWORD |
178 | | - nFileSizeLow: DWORD |
179 | | - dwReserved0: DWORD |
180 | | - dwReserved1: DWORD |
181 | | - cFileName: WCHAR * MAX_PATH |
182 | | - cAlternateFileName: WCHAR * 14 |
| 151 | +class WIN32_FIND_DATAA(ctypes.Structure): |
| 152 | + _fields_ = [("dwFileAttributes", DWORD), |
| 153 | + ("ftCreationTime", FILETIME), |
| 154 | + ("ftLastAccessTime", FILETIME), |
| 155 | + ("ftLastWriteTime", FILETIME), |
| 156 | + ("nFileSizeHigh", DWORD), |
| 157 | + ("nFileSizeLow", DWORD), |
| 158 | + ("dwReserved0", DWORD), |
| 159 | + ("dwReserved1", DWORD), |
| 160 | + ("cFileName", CHAR * MAX_PATH), |
| 161 | + ("cAlternateFileName", CHAR * 14)] |
| 162 | + |
| 163 | +class WIN32_FIND_DATAW(ctypes.Structure): |
| 164 | + _fields_ = [("dwFileAttributes", DWORD), |
| 165 | + ("ftCreationTime", FILETIME), |
| 166 | + ("ftLastAccessTime", FILETIME), |
| 167 | + ("ftLastWriteTime", FILETIME), |
| 168 | + ("nFileSizeHigh", DWORD), |
| 169 | + ("nFileSizeLow", DWORD), |
| 170 | + ("dwReserved0", DWORD), |
| 171 | + ("dwReserved1", DWORD), |
| 172 | + ("cFileName", WCHAR * MAX_PATH), |
| 173 | + ("cAlternateFileName", WCHAR * 14)] |
183 | 174 |
|
184 | 175 | ################################################################ |
185 | 176 | # Pointer types |
|
0 commit comments