1 #include <iostream>;
2 using namespace std;
3 #include <windows.h>;
4 #include <tlhelp32.h>;
5 #include <tchar.h>;
6
7 BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam);
8 HWND GetMainWindow();
9 void MyPostMessage(HWND hWnd);
10
11 extern "C" BOOL APIENTRY DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
12 {
13 HWND hWnd;
14 HWND hParWnd, hButWnd;
15 int d, d1;
16 switch (fdwReason)
17 {
18 case DLL_PROCESS_ATTACH:
19
20 hWnd = GetMainWindow();
21 if (hWnd)
22 hWnd = ::FindWindowEx(hWnd, 0, TEXT("EDIT"), NULL);
23 if (hWnd)
24 {
25 ::MessageBox(hWnd, TEXT("開始注入"), TEXT("提示"), MB_OK);
26 MyPostMessage(hWnd);
27 }
28 else
29 {
30 ::MessageBox(hWnd, TEXT("記事本不存在"), TEXT("提示"), MB_OK);
31 }
32 break;
33 case DLL_PROCESS_DETACH:
34 // detach from process
35 break;
36
37 case DLL_THREAD_ATTACH:
38 // attach to thread
39 break;
40
41 case DLL_THREAD_DETACH:
42 // detach from thread
43 break;
44 }
45 return TRUE; // succesful
46 }
47
48 BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
49 {
50 DWORD dwCurProcessId = *((DWORD*)lParam);
51 DWORD dwProcessId = 0;
52
53 GetWindowThreadProcessId(hwnd, &dwProcessId);
54 if (dwProcessId == dwCurProcessId && GetParent(hwnd) == NULL)
55 {
56 *((HWND *)lParam) = hwnd;
57 return FALSE;
58 }
59 return TRUE;
60 }
61
62
63 HWND GetMainWindow()
64 {
65 DWORD dwCurrentProcessId = GetCurrentProcessId();
66 if (!EnumWindows(EnumWindowsProc, (LPARAM)&dwCurrentProcessId))
67 {
68 return (HWND)dwCurrentProcessId;
69 }
70 return NULL;
71 }
72
73 void MyPostMessage(HWND hWnd)
74 {
75 for (int i = 0; i < 25; i++) {
76 PostMessageW(hWnd, WM_CHAR, L' ', 1);
77 }
78 PostMessageW(hWnd, WM_CHAR, L'.', 1);
79 PostMessageW(hWnd, WM_CHAR, L',', 1);
80 PostMessageW(hWnd, WM_CHAR, L']', 1);
81 PostMessageW(hWnd, WM_CHAR, L']', 1);
82 PostMessageW(hWnd, WM_CHAR, L'.', 1);
83 for (int i = 0; i < 33; i++) {
84 PostMessageW(hWnd, WM_CHAR, L' ', 1);
85 }
86 PostMessageW(hWnd, WM_CHAR, L',', 1);
87 PostMessageW(hWnd, WM_CHAR, L'/', 1);
88 for (int i = 0; i < 7; i++) {
89 PostMessageW(hWnd, WM_CHAR, L'O', 1);
90 }
91 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
92 PostMessageW(hWnd, WM_CHAR, L']', 1);
93 PostMessageW(hWnd, WM_CHAR, L']', 1);
94 PostMessageW(hWnd, WM_CHAR, L']', 1);
95 PostMessageW(hWnd, WM_CHAR, L'.', 1);
96 for (int i = 0; i < 17; i++) {
97 PostMessageW(hWnd, WM_CHAR, L' ', 1);
98 }
99 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
100 for (int i = 0; i < 16; i++) {
101 PostMessageW(hWnd, WM_CHAR, L' ', 1);
102 }
103 PostMessageW(hWnd, WM_CHAR, L',', 1);
104 PostMessageW(hWnd, WM_CHAR, L'/', 1);
105 for (int i = 0; i < 15; i++) {
106 PostMessageW(hWnd, WM_CHAR, L'O', 1);
107 }
108 PostMessageW(hWnd, WM_CHAR, L']', 1);
109 PostMessageW(hWnd, WM_CHAR, L'`', 1);
110 for (int i = 0; i < 23; i++) {
111 PostMessageW(hWnd, WM_CHAR, L' ', 1);
112 }
113 PostMessageW(hWnd, WM_CHAR, L'.', 1);
114 PostMessageW(hWnd, WM_CHAR, L']', 1);
115 for (int i = 0; i < 19; i++) {
116 PostMessageW(hWnd, WM_CHAR, L'O', 1);
117 }
118 PostMessageW(hWnd, WM_CHAR, L']', 1);
119 PostMessageW(hWnd, WM_CHAR, L'.', 1);
120 for (int i = 0; i < 13; i++) {
121 PostMessageW(hWnd, WM_CHAR, L' ', 1);
122 }
123 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
124 for (int i = 0; i < 12; i++) {
125 PostMessageW(hWnd, WM_CHAR, L' ', 1);
126 }
127 PostMessageW(hWnd, WM_CHAR, L']', 1);
128 PostMessageW(hWnd, WM_CHAR, L'/', 1);
129 for (int i = 0; i < 24; i++) {
130 PostMessageW(hWnd, WM_CHAR, L'O', 1);
131 }
132 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
133 PostMessageW(hWnd, WM_CHAR, L'.', 1);
134 for (int i = 0; i < 15; i++) {
135 PostMessageW(hWnd, WM_CHAR, L' ', 1);
136 }
137 PostMessageW(hWnd, WM_CHAR, L',', 1);
138 for (int i = 0; i < 27; i++) {
139 PostMessageW(hWnd, WM_CHAR, L'O', 1);
140 }
141 PostMessageW(hWnd, WM_CHAR, L']', 1);
142 for (int i = 0; i < 10; i++) {
143 PostMessageW(hWnd, WM_CHAR, L' ', 1);
144 }
145 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
146 for (int i = 0; i < 9; i++) {
147 PostMessageW(hWnd, WM_CHAR, L' ', 1);
148 }
149 PostMessageW(hWnd, WM_CHAR, L',', 1);
150 for (int i = 0; i < 31; i++) {
151 PostMessageW(hWnd, WM_CHAR, L'O', 1);
152 }
153 PostMessageW(hWnd, WM_CHAR, L'`', 1);
154 for (int i = 0; i < 11; i++) {
155 PostMessageW(hWnd, WM_CHAR, L' ', 1);
156 }
157 PostMessageW(hWnd, WM_CHAR, L',', 1);
158 for (int i = 0; i < 31; i++) {
159 PostMessageW(hWnd, WM_CHAR, L'O', 1);
160 }
161 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
162 for (int i = 0; i < 8; i++) {
163 PostMessageW(hWnd, WM_CHAR, L' ', 1);
164 }
165 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
166 for (int i = 0; i < 7; i++) {
167 PostMessageW(hWnd, WM_CHAR, L' ', 1);
168 }
169 PostMessageW(hWnd, WM_CHAR, L',', 1);
170 for (int i = 0; i < 35; i++) {
171 PostMessageW(hWnd, WM_CHAR, L'O', 1);
172 }
173 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
174 for (int i = 0; i < 7; i++) {
175 PostMessageW(hWnd, WM_CHAR, L' ', 1);
176 }
177 PostMessageW(hWnd, WM_CHAR, L',', 1);
178 for (int i = 0; i < 35; i++) {
179 PostMessageW(hWnd, WM_CHAR, L'O', 1);
180 }
181 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
182 for (int i = 0; i < 6; i++) {
183 PostMessageW(hWnd, WM_CHAR, L' ', 1);
184 }
185 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
186 for (int i = 0; i < 5; i++) {
187 PostMessageW(hWnd, WM_CHAR, L' ', 1);
188 }
189 PostMessageW(hWnd, WM_CHAR, L',', 1);
190 for (int i = 0; i < 39; i++) {
191 PostMessageW(hWnd, WM_CHAR, L'O', 1);
192 }
193 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
194 PostMessageW(hWnd, WM_CHAR, L'.', 1);
195 PostMessageW(hWnd, WM_CHAR, L' ', 1);
196 PostMessageW(hWnd, WM_CHAR, L' ', 1);
197 PostMessageW(hWnd, WM_CHAR, L',', 1);
198 for (int i = 0; i < 39; i++) {
199 PostMessageW(hWnd, WM_CHAR, L'O', 1);
200 }
201 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
202 for (int i = 0; i < 4; i++) {
203 PostMessageW(hWnd, WM_CHAR, L' ', 1);
204 }
205 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
206 for (int i = 0; i < 3; i++) {
207 PostMessageW(hWnd, WM_CHAR, L' ', 1);
208 }
209 PostMessageW(hWnd, WM_CHAR, L',', 1);
210 for (int i = 0; i < 87; i++) {
211 PostMessageW(hWnd, WM_CHAR, L'O', 1);
212 }
213 PostMessageW(hWnd, WM_CHAR, L'.', 1);
214 PostMessageW(hWnd, WM_CHAR, L' ', 1);
215 PostMessageW(hWnd, WM_CHAR, L' ', 1);
216 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
217 PostMessageW(hWnd, WM_CHAR, L' ', 1);
218 PostMessageW(hWnd, WM_CHAR, L' ', 1);
219 PostMessageW(hWnd, WM_CHAR, L'.', 1);
220 for (int i = 0; i < 89; i++) {
221 PostMessageW(hWnd, WM_CHAR, L'O', 1);
222 }
223 PostMessageW(hWnd, WM_CHAR, L'.', 1);
224 PostMessageW(hWnd, WM_CHAR, L' ', 1);
225 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
226 PostMessageW(hWnd, WM_CHAR, L' ', 1);
227 PostMessageW(hWnd, WM_CHAR, L' ', 1);
228 PostMessageW(hWnd, WM_CHAR, L'/', 1);
229 for (int i = 0; i < 90; i++) {
230 PostMessageW(hWnd, WM_CHAR, L'O', 1);
231 }
232 PostMessageW(hWnd, WM_CHAR, L' ', 1);
233 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
234 PostMessageW(hWnd, WM_CHAR, L' ', 1);
235 PostMessageW(hWnd, WM_CHAR, L'=', 1);
236 for (int i = 0; i < 91; i++) {
237 PostMessageW(hWnd, WM_CHAR, L'O', 1);
238 }
239 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
240 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
241 PostMessageW(hWnd, WM_CHAR, L'=', 1);
242 for (int i = 0; i < 93; i++) {
243 PostMessageW(hWnd, WM_CHAR, L'O', 1);
244 }
245 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
246 for (int i = 0; i < 94; i++) {
247 PostMessageW(hWnd, WM_CHAR, L'O', 1);
248 }
249 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
250 PostMessageW(hWnd, WM_CHAR, L'=', 1);
251 for (int i = 0; i < 93; i++) {
252 PostMessageW(hWnd, WM_CHAR, L'O', 1);
253 }
254 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
255 PostMessageW(hWnd, WM_CHAR, L'=', 1);
256 for (int i = 0; i < 93; i++) {
257 PostMessageW(hWnd, WM_CHAR, L'O', 1);
258 }
259 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
260 PostMessageW(hWnd, WM_CHAR, L'=', 1);
261 for (int i = 0; i < 93; i++) {
262 PostMessageW(hWnd, WM_CHAR, L'O', 1);
263 }
264 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
265 PostMessageW(hWnd, WM_CHAR, L'.', 1);
266 for (int i = 0; i < 93; i++) {
267 PostMessageW(hWnd, WM_CHAR, L'O', 1);
268 }
269 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
270 PostMessageW(hWnd, WM_CHAR, L' ', 1);
271 for (int i = 0; i < 93; i++) {
272 PostMessageW(hWnd, WM_CHAR, L'O', 1);
273 }
274 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
275 PostMessageW(hWnd, WM_CHAR, L' ', 1);
276 PostMessageW(hWnd, WM_CHAR, L',', 1);
277 for (int i = 0; i < 92; i++) {
278 PostMessageW(hWnd, WM_CHAR, L'O', 1);
279 }
280 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
281 PostMessageW(hWnd, WM_CHAR, L' ', 1);
282 PostMessageW(hWnd, WM_CHAR, L' ', 1);
283 PostMessageW(hWnd, WM_CHAR, L'=', 1);
284 for (int i = 0; i < 90; i++) {
285 PostMessageW(hWnd, WM_CHAR, L'O', 1);
286 }
287 PostMessageW(hWnd, WM_CHAR, L'^', 1);
288 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
289 for (int i = 0; i < 3; i++) {
290 PostMessageW(hWnd, WM_CHAR, L' ', 1);
291 }
292 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
293 for (int i = 0; i < 88; i++) {
294 PostMessageW(hWnd, WM_CHAR, L'O', 1);
295 }
296 PostMessageW(hWnd, WM_CHAR, L'/', 1);
297 PostMessageW(hWnd, WM_CHAR, L' ', 1);
298 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
299 for (int i = 0; i < 4; i++) {
300 PostMessageW(hWnd, WM_CHAR, L' ', 1);
301 }
302 for (int i = 0; i < 88; i++) {
303 PostMessageW(hWnd, WM_CHAR, L'O', 1);
304 }
305 PostMessageW(hWnd, WM_CHAR, L' ', 1);
306 PostMessageW(hWnd, WM_CHAR, L' ', 1);
307 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
308 for (int i = 0; i < 4; i++) {
309 PostMessageW(hWnd, WM_CHAR, L' ', 1);
310 }
311 PostMessageW(hWnd, WM_CHAR, L'.', 1);
312 for (int i = 0; i < 86; i++) {
313 PostMessageW(hWnd, WM_CHAR, L'O', 1);
314 }
315 PostMessageW(hWnd, WM_CHAR, L'.', 1);
316 PostMessageW(hWnd, WM_CHAR, L' ', 1);
317 PostMessageW(hWnd, WM_CHAR, L' ', 1);
318 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
319 for (int i = 0; i < 5; i++) {
320 PostMessageW(hWnd, WM_CHAR, L' ', 1);
321 }
322 PostMessageW(hWnd, WM_CHAR, L',', 1);
323 for (int i = 0; i < 84; i++) {
324 PostMessageW(hWnd, WM_CHAR, L'O', 1);
325 }
326 PostMessageW(hWnd, WM_CHAR, L'.', 1);
327 for (int i = 0; i < 3; i++) {
328 PostMessageW(hWnd, WM_CHAR, L' ', 1);
329 }
330 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
331 for (int i = 0; i < 7; i++) {
332 PostMessageW(hWnd, WM_CHAR, L' ', 1);
333 }
334 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
335 for (int i = 0; i < 80; i++) {
336 PostMessageW(hWnd, WM_CHAR, L'O', 1);
337 }
338 PostMessageW(hWnd, WM_CHAR, L'/', 1);
339 for (int i = 0; i < 5; i++) {
340 PostMessageW(hWnd, WM_CHAR, L' ', 1);
341 }
342 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
343 for (int i = 0; i < 8; i++) {
344 PostMessageW(hWnd, WM_CHAR, L' ', 1);
345 }
346 PostMessageW(hWnd, WM_CHAR, L',', 1);
347 for (int i = 0; i < 78; i++) {
348 PostMessageW(hWnd, WM_CHAR, L'O', 1);
349 }
350 PostMessageW(hWnd, WM_CHAR, L'`', 1);
351 for (int i = 0; i < 6; i++) {
352 PostMessageW(hWnd, WM_CHAR, L' ', 1);
353 }
354 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
355 for (int i = 0; i < 9; i++) {
356 PostMessageW(hWnd, WM_CHAR, L' ', 1);
357 }
358 PostMessageW(hWnd, WM_CHAR, L',', 1);
359 for (int i = 0; i < 76; i++) {
360 PostMessageW(hWnd, WM_CHAR, L'O', 1);
361 }
362 PostMessageW(hWnd, WM_CHAR, L'`', 1);
363 for (int i = 0; i < 7; i++) {
364 PostMessageW(hWnd, WM_CHAR, L' ', 1);
365 }
366 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
367 for (int i = 0; i < 11; i++) {
368 PostMessageW(hWnd, WM_CHAR, L' ', 1);
369 }
370 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
371 for (int i = 0; i < 72; i++) {
372 PostMessageW(hWnd, WM_CHAR, L'O', 1);
373 }
374 PostMessageW(hWnd, WM_CHAR, L'/', 1);
375 for (int i = 0; i < 9; i++) {
376 PostMessageW(hWnd, WM_CHAR, L' ', 1);
377 }
378 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
379 for (int i = 0; i < 12; i++) {
380 PostMessageW(hWnd, WM_CHAR, L' ', 1);
381 }
382 PostMessageW(hWnd, WM_CHAR, L'=', 1);
383 for (int i = 0; i < 70; i++) {
384 PostMessageW(hWnd, WM_CHAR, L'O', 1);
385 }
386 PostMessageW(hWnd, WM_CHAR, L'^', 1);
387 for (int i = 0; i < 10; i++) {
388 PostMessageW(hWnd, WM_CHAR, L' ', 1);
389 }
390 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
391 for (int i = 0; i < 13; i++) {
392 PostMessageW(hWnd, WM_CHAR, L' ', 1);
393 }
394 PostMessageW(hWnd, WM_CHAR, L'.', 1);
395 for (int i = 0; i < 67; i++) {
396 PostMessageW(hWnd, WM_CHAR, L'O', 1);
397 }
398 PostMessageW(hWnd, WM_CHAR, L'/', 1);
399 PostMessageW(hWnd, WM_CHAR, L'.', 1);
400 for (int i = 0; i < 11; i++) {
401 PostMessageW(hWnd, WM_CHAR, L' ', 1);
402 }
403 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
404 for (int i = 0; i < 15; i++) {
405 PostMessageW(hWnd, WM_CHAR, L' ', 1);
406 }
407 PostMessageW(hWnd, WM_CHAR, L',', 1);
408 for (int i = 0; i < 64; i++) {
409 PostMessageW(hWnd, WM_CHAR, L'O', 1);
410 }
411 PostMessageW(hWnd, WM_CHAR, L'`', 1);
412 for (int i = 0; i < 13; i++) {
413 PostMessageW(hWnd, WM_CHAR, L' ', 1);
414 }
415 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
416 for (int i = 0; i < 17; i++) {
417 PostMessageW(hWnd, WM_CHAR, L' ', 1);
418 }
419 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
420 for (int i = 0; i < 60; i++) {
421 PostMessageW(hWnd, WM_CHAR, L'O', 1);
422 }
423 PostMessageW(hWnd, WM_CHAR, L'/', 1);
424 for (int i = 0; i < 15; i++) {
425 PostMessageW(hWnd, WM_CHAR, L' ', 1);
426 }
427 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
428 for (int i = 0; i < 18; i++) {
429 PostMessageW(hWnd, WM_CHAR, L' ', 1);
430 }
431 PostMessageW(hWnd, WM_CHAR, L',', 1);
432 for (int i = 0; i < 58; i++) {
433 PostMessageW(hWnd, WM_CHAR, L'O', 1);
434 }
435 PostMessageW(hWnd, WM_CHAR, L'.', 1);
436 for (int i = 0; i < 16; i++) {
437 PostMessageW(hWnd, WM_CHAR, L' ', 1);
438 }
439 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
440 for (int i = 0; i < 20; i++) {
441 PostMessageW(hWnd, WM_CHAR, L' ', 1);
442 }
443 PostMessageW(hWnd, WM_CHAR, L',', 1);
444 for (int i = 0; i < 54; i++) {
445 PostMessageW(hWnd, WM_CHAR, L'O', 1);
446 }
447 PostMessageW(hWnd, WM_CHAR, L'`', 1);
448 for (int i = 0; i < 18; i++) {
449 PostMessageW(hWnd, WM_CHAR, L' ', 1);
450 }
451 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
452 for (int i = 0; i < 22; i++) {
453 PostMessageW(hWnd, WM_CHAR, L' ', 1);
454 }
455 PostMessageW(hWnd, WM_CHAR, L',', 1);
456 for (int i = 0; i < 50; i++) {
457 PostMessageW(hWnd, WM_CHAR, L'O', 1);
458 }
459 PostMessageW(hWnd, WM_CHAR, L'`', 1);
460 for (int i = 0; i < 20; i++) {
461 PostMessageW(hWnd, WM_CHAR, L' ', 1);
462 }
463 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
464 for (int i = 0; i < 24; i++) {
465 PostMessageW(hWnd, WM_CHAR, L' ', 1);
466 }
467 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
468 for (int i = 0; i < 46; i++) {
469 PostMessageW(hWnd, WM_CHAR, L'O', 1);
470 }
471 PostMessageW(hWnd, WM_CHAR, L'`', 1);
472 for (int i = 0; i < 22; i++) {
473 PostMessageW(hWnd, WM_CHAR, L' ', 1);
474 }
475 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
476 for (int i = 0; i < 26; i++) {
477 PostMessageW(hWnd, WM_CHAR, L' ', 1);
478 }
479 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
480 for (int i = 0; i < 42; i++) {
481 PostMessageW(hWnd, WM_CHAR, L'O', 1);
482 }
483 PostMessageW(hWnd, WM_CHAR, L'`', 1);
484 for (int i = 0; i < 24; i++) {
485 PostMessageW(hWnd, WM_CHAR, L' ', 1);
486 }
487 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
488 for (int i = 0; i < 28; i++) {
489 PostMessageW(hWnd, WM_CHAR, L' ', 1);
490 }
491 PostMessageW(hWnd, WM_CHAR, L',', 1);
492 for (int i = 0; i < 37; i++) {
493 PostMessageW(hWnd, WM_CHAR, L'O', 1);
494 }
495 PostMessageW(hWnd, WM_CHAR, L'/', 1);
496 PostMessageW(hWnd, WM_CHAR, L'.', 1);
497 for (int i = 0; i < 26; i++) {
498 PostMessageW(hWnd, WM_CHAR, L' ', 1);
499 }
500 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
501 for (int i = 0; i < 30; i++) {
502 PostMessageW(hWnd, WM_CHAR, L' ', 1);
503 }
504 PostMessageW(hWnd, WM_CHAR, L'.', 1);
505 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
506 for (int i = 0; i < 32; i++) {
507 PostMessageW(hWnd, WM_CHAR, L'O', 1);
508 }
509 PostMessageW(hWnd, WM_CHAR, L'[', 1);
510 for (int i = 0; i < 29; i++) {
511 PostMessageW(hWnd, WM_CHAR, L' ', 1);
512 }
513 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
514 for (int i = 0; i < 33; i++) {
515 PostMessageW(hWnd, WM_CHAR, L' ', 1);
516 }
517 PostMessageW(hWnd, WM_CHAR, L',', 1);
518 for (int i = 0; i < 27; i++) {
519 PostMessageW(hWnd, WM_CHAR, L'O', 1);
520 }
521 PostMessageW(hWnd, WM_CHAR, L'/', 1);
522 PostMessageW(hWnd, WM_CHAR, L'`', 1);
523 for (int i = 0; i < 31; i++) {
524 PostMessageW(hWnd, WM_CHAR, L' ', 1);
525 }
526 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
527 for (int i = 0; i < 36; i++) {
528 PostMessageW(hWnd, WM_CHAR, L' ', 1);
529 }
530 PostMessageW(hWnd, WM_CHAR, L',', 1);
531 for (int i = 0; i < 22; i++) {
532 PostMessageW(hWnd, WM_CHAR, L'O', 1);
533 }
534 PostMessageW(hWnd, WM_CHAR, L'`', 1);
535 for (int i = 0; i < 34; i++) {
536 PostMessageW(hWnd, WM_CHAR, L' ', 1);
537 }
538 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
539 for (int i = 0; i < 39; i++) {
540 PostMessageW(hWnd, WM_CHAR, L' ', 1);
541 }
542 PostMessageW(hWnd, WM_CHAR, L',', 1);
543 for (int i = 0; i < 16; i++) {
544 PostMessageW(hWnd, WM_CHAR, L'O', 1);
545 }
546 PostMessageW(hWnd, WM_CHAR, L'[', 1);
547 for (int i = 0; i < 37; i++) {
548 PostMessageW(hWnd, WM_CHAR, L' ', 1);
549 }
550 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
551 for (int i = 0; i < 42; i++) {
552 PostMessageW(hWnd, WM_CHAR, L' ', 1);
553 }
554 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
555 for (int i = 0; i < 10; i++) {
556 PostMessageW(hWnd, WM_CHAR, L'O', 1);
557 }
558 PostMessageW(hWnd, WM_CHAR, L'/', 1);
559 PostMessageW(hWnd, WM_CHAR, L'.', 1);
560 for (int i = 0; i < 39; i++) {
561 PostMessageW(hWnd, WM_CHAR, L' ', 1);
562 }
563 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
564 for (int i = 0; i < 44; i++) {
565 PostMessageW(hWnd, WM_CHAR, L' ', 1);
566 }
567 PostMessageW(hWnd, WM_CHAR, L',', 1);
568 for (int i = 0; i < 6; i++) {
569 PostMessageW(hWnd, WM_CHAR, L'O', 1);
570 }
571 PostMessageW(hWnd, WM_CHAR, L'`', 1);
572 for (int i = 0; i < 42; i++) {
573 PostMessageW(hWnd, WM_CHAR, L' ', 1);
574 }
575 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
576 for (int i = 0; i < 46; i++) {
577 PostMessageW(hWnd, WM_CHAR, L' ', 1);
578 }
579 PostMessageW(hWnd, WM_CHAR, L'.', 1);
580 PostMessageW(hWnd, WM_CHAR, L'\\', 1);
581 PostMessageW(hWnd, WM_CHAR, L'O', 1);
582 PostMessageW(hWnd, WM_CHAR, L'`', 1);
583 for (int i = 0; i < 44; i++) {
584 PostMessageW(hWnd, WM_CHAR, L' ', 1);
585 }
586 PostMessageW(hWnd, WM_CHAR, L'\n', 1);
587 }