1 |
#Region "Microsoft.VisualBasic::ddbb9dd4f95699b61d4328dc97447f20, Microsoft.VisualBasic.Core\ApplicationServices\Tools\Win32\Win32API.vb"
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
31 |
|
32 |
|
33 |
|
34 |
|
35 |
|
36 |
|
37 |
|
38 |
|
39 |
|
40 |
|
41 |
|
42 |
|
43 |
|
44 |
|
45 |
|
46 |
|
47 |
|
48 |
|
49 |
#End Region
|
50 |
|
51 |
Imports System.Drawing
|
52 |
Imports Microsoft.VisualBasic.Serialization
|
53 |
Imports Microsoft.VisualBasic.Serialization.JSON
|
54 |
|
55 |
Namespace Win32
|
56 |
|
57 |
Public Structure RECT
|
58 |
Dim Left As Integer
|
59 |
Dim Top As Integer
|
60 |
Dim right As Integer
|
61 |
Dim bottom As Integer
|
62 |
|
63 |
Public Overrides Function ToString() As String
|
64 |
Return Me.GetJson
|
65 |
End Function
|
66 |
|
67 |
Public Shared Narrowing Operator CType(obj As RECT) As Rectangle
|
68 |
Dim pt As New Point(obj.Left, obj.Top)
|
69 |
Dim sz As New Size(obj.right - obj.Left, obj.bottom - obj.Top)
|
70 |
Return New Rectangle(pt, sz)
|
71 |
End Operator
|
72 |
|
73 |
Public Shared Narrowing Operator CType(obj As RECT) As RectangleF
|
74 |
Dim pt As New PointF(obj.Left, obj.Top)
|
75 |
Dim sz As New SizeF(obj.right - obj.Left, obj.bottom - obj.Top)
|
76 |
Return New RectangleF(pt, sz)
|
77 |
End Operator
|
78 |
End Structure
|
79 |
|
80 |
Public Structure C_BITMAP
|
81 |
Dim bmType As Integer
|
82 |
Dim bmWidth As Integer
|
83 |
Dim bmHeight As Integer
|
84 |
Dim bmWidthBytes As Integer
|
85 |
Dim bmPlanes As Integer
|
86 |
Dim bmBitsPixel As Integer
|
87 |
Dim bmBits As Integer
|
88 |
|
89 |
Public Overrides Function ToString() As String
|
90 |
Return Me.GetJson
|
91 |
End Function
|
92 |
End Structure
|
93 |
|
94 |
Public Module Win32API
|
95 |
|
96 |
|
97 |
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (hwnd As Integer, wMsg As Integer, wParam As Integer, lParam As Object) As Integer
|
98 |
|
99 |
Public Const WM_GETFONT = &H31
|
100 |
'
|
101 |
Declare Function SetCapture Lib "user32" (hwnd As Integer) As Integer
|
102 |
Declare Function ReleaseCapture Lib "user32" () As Integer
|
103 |
'
|
104 |
Declare Function GetWindowRect Lib "user32" (hwnd As Integer, lpRect As RECT) As Integer
|
105 |
Declare Function GetCursorPos Lib "user32" (lpPoint As Point) As Integer
|
106 |
Declare Function SetCursorPos Lib "user32" (x As Integer, y As Integer) As Integer
|
107 |
'
|
108 |
|
109 |
|
110 |
'
|
111 |
Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (lpBuffer As String, nSize As Integer) As Integer
|
112 |
Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (lpBuffer As String, nSize As Integer) As Integer
|
113 |
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (hwnd As Integer, lpOperation As String, lpFile As String, lpParameters As String, lpDirectory As String, nShowCmd As Integer) As Integer
|
114 |
'
|
115 |
|
116 |
|
117 |
Declare Function DrawEdge Lib "user32" (hdc As Integer, qrc As RECT, edge As Integer, grfFlags As Integer) As Boolean
|
118 |
|
119 |
Public Const BDR_RAISEDOUTER = &H1
|
120 |
Public Const BDR_SUNKENOUTER = &H2
|
121 |
Public Const BDR_RAISEDINNER = &H4
|
122 |
Public Const BDR_SUNKENINNER = &H8
|
123 |
|
124 |
Public Const BDR_OUTER = &H3
|
125 |
Public Const BDR_INNER = &HC
|
126 |
Public Const BDR_RAISED = &H5
|
127 |
Public Const BDR_SUNKEN = &HA
|
128 |
|
129 |
Public Const EDGE_RAISED = (BDR_RAISEDOUTER Or BDR_RAISEDINNER)
|
130 |
Public Const EDGE_SUNKEN = (BDR_SUNKENOUTER Or BDR_SUNKENINNER)
|
131 |
Public Const EDGE_ETCHED = (BDR_SUNKENOUTER Or BDR_RAISEDINNER)
|
132 |
Public Const EDGE_BUMP = (BDR_RAISEDOUTER Or BDR_SUNKENINNER)
|
133 |
|
134 |
Public Const BF_LEFT = &H1
|
135 |
Public Const BF_TOP = &H2
|
136 |
Public Const BF_RIGHT = &H4
|
137 |
Public Const BF_BOTTOM = &H8
|
138 |
|
139 |
Public Const BF_TOPLEFT = (BF_TOP Or BF_LEFT)
|
140 |
Public Const BF_TOPRIGHT = (BF_TOP Or BF_RIGHT)
|
141 |
Public Const BF_BOTTOMLEFT = (BF_BOTTOM Or BF_LEFT)
|
142 |
Public Const BF_BOTTOMRIGHT = (BF_BOTTOM Or BF_RIGHT)
|
143 |
Public Const BF_RECT = (BF_LEFT Or BF_TOP Or BF_RIGHT Or BF_BOTTOM)
|
144 |
|
145 |
Public Const BF_DIAGONAL = &H10
|
146 |
Public Const BF_DIAGONAL_ENDTOPRIGHT = (BF_DIAGONAL Or BF_TOP Or BF_RIGHT)
|
147 |
Public Const BF_DIAGONAL_ENDTOPLEFT = (BF_DIAGONAL Or BF_TOP Or BF_LEFT)
|
148 |
Public Const BF_DIAGONAL_ENDBOTTOMLEFT = (BF_DIAGONAL Or BF_BOTTOM Or BF_LEFT)
|
149 |
Public Const BF_DIAGONAL_ENDBOTTOMRIGHT = (BF_DIAGONAL Or BF_BOTTOM Or BF_RIGHT)
|
150 |
|
151 |
Public Const BF_MIDDLE = &H800
|
152 |
Public Const BF_SOFT = &H1000
|
153 |
Public Const BF_ADJUST = &H2000
|
154 |
Public Const BF_FLAT = &H4000
|
155 |
Public Const BF_MONO = &H8000
|
156 |
'
|
157 |
|
158 |
|
159 |
'
|
160 |
Declare Function DrawText Lib "user32" Alias "DrawTextA" (hdc As Integer, lpStr As String, nCount As Integer, lpRect As RECT, wFormat As Integer) As Integer
|
161 |
Declare Function SetTextColor Lib "gdi32" (hdc As Integer, crColor As Integer) As Integer
|
162 |
Declare Function OffsetRect Lib "user32" (lpRect As RECT, x As Integer, y As Integer) As Integer
|
163 |
Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (lpString As String) As Integer
|
164 |
Declare Function SetBkMode Lib "gdi32" (hdc As Integer, nBkMode As Integer) As Integer
|
165 |
|
166 |
Public Const DT_TOP = &H0
|
167 |
Public Const DT_LEFT = &H0
|
168 |
Public Const DT_CENTER = &H1
|
169 |
Public Const DT_RIGHT = &H2
|
170 |
Public Const DT_VCENTER = &H4
|
171 |
Public Const DT_BOTTOM = &H8
|
172 |
Public Const DT_WORDBREAK = &H10
|
173 |
Public Const DT_SINGLELINE = &H20
|
174 |
Public Const DT_EXPANDTABS = &H40
|
175 |
Public Const DT_TABSTOP = &H80
|
176 |
Public Const DT_NOCLIP = &H100
|
177 |
Public Const DT_EXTERNALLEADING = &H200
|
178 |
Public Const DT_CALCRECT = &H400
|
179 |
Public Const DT_NOPREFIX = &H800
|
180 |
Public Const DT_INTERNAL = &H1000
|
181 |
|
182 |
Public Const OPAQUE = 2
|
183 |
Public Const TRANSPARENT = 1
|
184 |
'
|
185 |
|
186 |
|
187 |
'
|
188 |
Declare Function GetPixel Lib "gdi32" (hdc As Integer, x As Integer, y As Integer) As Integer
|
189 |
Declare Function SetPixelV Lib "gdi32" (hdc As Integer, x As Integer, y As Integer, crColor As Integer) As Integer
|
190 |
'
|
191 |
Declare Function GetDC Lib "user32" (hwnd As Integer) As Integer
|
192 |
Declare Function CreateCompatibleDC Lib "gdi32" (hdc As Integer) As Integer
|
193 |
Declare Function DeleteDC Lib "gdi32" (hdc As Integer) As Integer
|
194 |
Declare Function ReleaseDC Lib "user32" (hwnd As Integer, hdc As Integer) As Integer
|
195 |
Declare Function SaveDC Lib "gdi32" (hdc As Integer) As Integer
|
196 |
Declare Function RestoreDC Lib "gdi32" (hdc As Integer, nSavedDC As Integer) As Integer
|
197 |
'
|
198 |
Declare Function CreateBitmap Lib "gdi32" (nWidth As Integer, nHeight As Integer, nPlanes As Integer, nBitCount As Integer, lpBits As Object) As Integer
|
199 |
Declare Function CreateCompatibleBitmap Lib "gdi32" (hdc As Integer, nWidth As Integer, nHeight As Integer) As Integer
|
200 |
Declare Function CreateBitmapIndirect Lib "gdi32" (lpBitmap As C_BITMAP) As Integer
|
201 |
'
|
202 |
Declare Function GetObjectA Lib "gdi32" Alias "GetObjectA" (hObject As Integer, nCount As Integer, lpObject As Object) As Integer
|
203 |
Declare Function SelectObject Lib "gdi32" (hdc As Integer, hObject As Integer) As Integer
|
204 |
Declare Function DeleteObject Lib "gdi32" (hObject As Integer) As Integer
|
205 |
'
|
206 |
Declare Function GetMapMode Lib "gdi32" (hdc As Integer) As Integer
|
207 |
Declare Function SetMapMode Lib "gdi32" (hdc As Integer, nMapMode As Integer) As Integer
|
208 |
'
|
209 |
Declare Function SetBkColor Lib "gdi32" (hdc As Integer, crColor As Integer) As Integer
|
210 |
'
|
211 |
Declare Function BitBlt Lib "gdi32" (hDestDC As Integer, x As Integer, y As Integer, nWidth As Integer, nHeight As Integer, hSrcDC As Integer, xSrc As Integer, ySrc As Integer, dwRop As Integer) As Integer
|
212 |
Declare Function StretchBlt Lib "gdi32" (hdc As Integer, x As Integer, y As Integer, nWidth As Integer, nHeight As Integer, hSrcDC As Integer, xSrc As Integer, ySrc As Integer, nSrcWidth As Integer, nSrcHeight As Integer, dwRop As Integer) As Integer
|
213 |
|
214 |
Public Const BLACKNESS = &H42
|
215 |
Public Const DSTINVERT = &H550009
|
216 |
Public Const MERGECOPY = &HC000CA
|
217 |
Public Const MERGEPAINT = &HBB0226
|
218 |
Public Const NOTSRCCOPY = &H330008
|
219 |
Public Const NOTSRCERASE = &H1100A6
|
220 |
Public Const PATCOPY = &HF00021
|
221 |
Public Const PATINVERT = &H5A0049 XOR dest
|
222 |
Public Const PATPAINT = &HFB0A09
|
223 |
Public Const SRCAND = &H8800C6
|
224 |
Public Const SRCCOPY = &HCC0020
|
225 |
Public Const SRCERASE = &H440328 AND (NOT dest )
|
226 |
Public Const SRCINVERT = &H660046 XOR dest
|
227 |
Public Const SRCPAINT = &HEE0086 OR dest
|
228 |
Public Const WHITENESS = &HFF0062
|
229 |
'
|
230 |
Declare Function CreateSolidBrush Lib "gdi32" (crColor As Integer) As Integer
|
231 |
Declare Function CreatePatternBrush Lib "gdi32" (hBitmap As Integer) As Integer
|
232 |
Declare Function CreatePen Lib "gdi32" (nPenStyle As Integer, nWidth As Integer, crColor As Integer) As Integer
|
233 |
|
234 |
Public Const PS_SOLID = 0
|
235 |
Public Const PS_DASH = 1
|
236 |
Public Const PS_DOT = 2
|
237 |
Public Const PS_DASHDOT = 3
|
238 |
Public Const PS_DASHDOTDOT = 4
|
239 |
Public Const PS_NULL = 5
|
240 |
Public Const PS_INSIDEFRAME = 6
|
241 |
'
|
242 |
Declare Function FillRect Lib "user32" (hdc As Integer, lpRect As RECT, hBrush As Integer) As Integer
|
243 |
'
|
244 |
Declare Function DrawState Lib "user32" Alias "DrawStateA" (hdc As Integer, hBrush As Integer, lpDrawStateProc As Integer, lParam As Integer, wParam As Integer, n1 As Integer, n2 As Integer, n3 As Integer, n4 As Integer, un As Integer) As Integer
|
245 |
|
246 |
Public Const DSS_DISABLED = &H20
|
247 |
Public Const DSS_MONO = &H80
|
248 |
Public Const DSS_NORMAL = &H0
|
249 |
Public Const DSS_RIGHT = &H8000
|
250 |
Public Const DSS_UNION = &H10
|
251 |
Public Const DST_BITMAP = &H4
|
252 |
Public Const DST_COMPLEX = &H0
|
253 |
Public Const DST_ICON = &H3
|
254 |
Public Const DST_PREFIXTEXT = &H2
|
255 |
Public Const DST_TEXT = &H1
|
256 |
'
|
257 |
Declare Function Polygon Lib "gdi32" (hdc As Integer, lpPoint As Point, nCount As Integer) As Integer
|
258 |
'
|
259 |
Declare Function GetWindowDC Lib "user32" (hwnd As Integer) As Integer
|
260 |
Declare Function IntersectRect Lib "user32" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT) As Integer
|
261 |
Declare Function SubtractRect Lib "user32" (lprcDst As RECT, lprcSrc1 As RECT, lprcSrc2 As RECT) As Integer
|
262 |
Declare Function UnionRect Lib "user32" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT) As Integer
|
263 |
Declare Function IsRectEmpty Lib "user32" (lpRect As RECT) As Integer
|
264 |
Declare Function SetRect Lib "user32" (lpRect As RECT, X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer) As Integer
|
265 |
Declare Function Rectangle Lib "gdi32" (hdc As Integer, X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer) As Integer
|
266 |
Declare Function EqualRect Lib "user32" (lpRect1 As RECT, lpRect2 As RECT) As Integer
|
267 |
End Module
|
268 |
End Namespace
|