- Timestamp:
- Apr 11, 2003, 2:08:36 PM (22 years ago)
- Location:
- trunk/src/kernel32
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/HandleManager.cpp
r9975 r10010 1 /* $Id: HandleManager.cpp,v 1.9 8 2003-04-02 12:58:27sandervl Exp $ */1 /* $Id: HandleManager.cpp,v 1.99 2003-04-11 12:08:34 sandervl Exp $ */ 2 2 3 3 /* … … 879 879 } 880 880 881 /***************************************************************************** 882 * Name : HANDLE _HMUdptStdHandle 883 * Purpose : 884 * Parameters: DWORD nStdHandle 885 * HANDLE hHandle 886 * Variables : 887 * Result : BOOL fSuccess 888 * Remark : 889 * Status : 890 * 891 * Author : Dmitry Froloff [Thu, 2003/03/03 17:44] 892 *****************************************************************************/ 893 894 BOOL HMUpdtStdHandle(DWORD nStdHandle, HANDLE hHandle) 895 { 896 switch (nStdHandle) 897 { 898 case STD_INPUT_HANDLE: HMGlobals.hStandardIn = hHandle; return TRUE; 899 case STD_OUTPUT_HANDLE: HMGlobals.hStandardOut = hHandle; return TRUE; 900 case STD_ERROR_HANDLE: HMGlobals.hStandardError = hHandle; return TRUE; 901 902 default: 903 { 904 SetLastError(ERROR_INVALID_PARAMETER); /* set error information */ 905 return (FALSE); /* raise error condition */ 906 } 907 } 908 } 909 881 910 882 911 /***************************************************************************** … … 924 953 /* initialize the complete HMHANDLEDATA structure */ 925 954 pHMHandleData = &TabWin32Handles[iIndexNew].hmHandleData; 926 if (fdwOptions & DUPLICATE_SAME_ACCESS) 955 if (fdwOptions & DUPLICATE_SAME_ACCESS) 927 956 pHMHandleData->dwAccess = TabWin32Handles[srchandle].hmHandleData.dwAccess; 928 957 else … … 1285 1314 * Result : TRUE / FALSE 1286 1315 * Remark : 1287 * Status : 1316 * Status : 1288 1317 * 1289 1318 * Author : SvL … … 1324 1353 * Result : TRUE / FALSE 1325 1354 * Remark : 1326 * Status : 1355 * Status : 1327 1356 * 1328 1357 * Author : SvL 1329 1358 *****************************************************************************/ 1330 BOOL HMSetHandleInformation (HANDLE hObject, 1359 BOOL HMSetHandleInformation (HANDLE hObject, 1331 1360 DWORD dwMask, 1332 1361 DWORD dwFlags) … … 2074 2103 if(dwTimeout && dwTimeout < 20) { 2075 2104 dwThreadPriority = GetThreadPriority(hThread); 2076 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 2105 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 2077 2106 { 2078 2107 dprintf(("Temporarily change priority to THREAD_PRIORITY_TIME_CRITICAL for better timing")); … … 3068 3097 if(dwTimeout && dwTimeout < 20) { 3069 3098 dwThreadPriority = GetThreadPriority(hThread); 3070 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 3099 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 3071 3100 { 3072 3101 dprintf(("Temporarily change priority to THREAD_PRIORITY_TIME_CRITICAL for better timing")); … … 3191 3220 if(dwTimeout && dwTimeout < 20) { 3192 3221 dwThreadPriority = GetThreadPriority(hThread); 3193 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 3222 if(dwThreadPriority != THREAD_PRIORITY_TIME_CRITICAL) 3194 3223 { 3195 3224 dprintf(("Temporarily change priority to THREAD_PRIORITY_TIME_CRITICAL for better timing")); … … 4246 4275 4247 4276 pHMHandle = &TabWin32Handles[iIndex]; /* call device handler */ 4248 lpResult = pHMHandle->pDeviceHandler->GetThreadTimes(hThread, &TabWin32Handles[iIndex].hmHandleData, 4249 lpCreationTime, lpExitTime, 4277 lpResult = pHMHandle->pDeviceHandler->GetThreadTimes(hThread, &TabWin32Handles[iIndex].hmHandleData, 4278 lpCreationTime, lpExitTime, 4250 4279 lpKernelTime, lpUserTime); 4251 4280 -
trunk/src/kernel32/conbuffer.cpp
r9975 r10010 1 /* $Id: conbuffer.cpp,v 1.1 8 2003-04-02 12:58:28sandervl Exp $ */1 /* $Id: conbuffer.cpp,v 1.19 2003-04-11 12:08:35 sandervl Exp $ */ 2 2 3 3 /* … … 429 429 ULONG2COORD(coordWrite,arg3); 430 430 431 return (HMDeviceConsoleBufferClass 432 ::FillConsoleOutputAttribute(pHMHandleData, 433 (WORD)arg1, 434 (DWORD)arg2, 435 coordWrite, 436 (LPDWORD)arg4)); 431 return (FillConsoleOutputAttribute(pHMHandleData, 432 (WORD)arg1, 433 (DWORD)arg2, 434 coordWrite, 435 (LPDWORD)arg4)); 437 436 } 438 437 … … 444 443 ULONG2COORD(coordWrite,arg3); 445 444 446 return (HMDeviceConsoleBufferClass 447 ::FillConsoleOutputCharacterA(pHMHandleData, 448 (UCHAR)arg1, 449 (DWORD)arg2, 450 coordWrite, 445 return (FillConsoleOutputCharacterA(pHMHandleData, 446 (UCHAR)arg1, 447 (DWORD)arg2, 448 coordWrite, 451 449 (LPDWORD)arg4)); 452 450 } … … 459 457 ULONG2COORD(coordWrite,arg3); 460 458 461 return (HMDeviceConsoleBufferClass 462 ::FillConsoleOutputCharacterW(pHMHandleData, 459 return (FillConsoleOutputCharacterW(pHMHandleData, 463 460 (WCHAR)arg1, 464 461 (DWORD)arg2, … … 469 466 470 467 case DRQ_GETCONSOLECURSORINFO: 471 return (HMDeviceConsoleBufferClass 472 ::GetConsoleCursorInfo(pHMHandleData, 468 return (GetConsoleCursorInfo(pHMHandleData, 473 469 (PCONSOLE_CURSOR_INFO)arg1)); 474 470 475 471 476 472 case DRQ_GETCONSOLEMODE: 477 return (HMDeviceConsoleBufferClass 478 ::GetConsoleMode(pHMHandleData, 473 return (GetConsoleMode(pHMHandleData, 479 474 (LPDWORD)arg1)); 480 475 481 476 482 477 case DRQ_GETCONSOLESCREENBUFFERINFO: 483 return (HMDeviceConsoleBufferClass 484 ::GetConsoleScreenBufferInfo(pHMHandleData, 478 return (GetConsoleScreenBufferInfo(pHMHandleData, 485 479 (PCONSOLE_SCREEN_BUFFER_INFO)arg1)); 486 480 487 481 488 482 case DRQ_GETLARGESTCONSOLEWINDOWSIZE: 489 return (HMDeviceConsoleBufferClass 490 ::GetLargestConsoleWindowSize(pHMHandleData)); 483 return (GetLargestConsoleWindowSize(pHMHandleData)); 491 484 492 485 … … 499 492 ULONG2COORD(coordDestBufferCoord, arg3); 500 493 501 return (HMDeviceConsoleBufferClass 502 ::ReadConsoleOutputA(pHMHandleData, 494 return (ReadConsoleOutputA(pHMHandleData, 503 495 (PCHAR_INFO)arg1, 504 496 coordDestBufferSize, … … 516 508 ULONG2COORD(coordDestBufferCoord, arg3); 517 509 518 return (HMDeviceConsoleBufferClass 519 ::ReadConsoleOutputW(pHMHandleData, 510 return (ReadConsoleOutputW(pHMHandleData, 520 511 (PCHAR_INFO)arg1, 521 512 coordDestBufferSize, … … 531 522 ULONG2COORD(coordReadCoord, arg3); 532 523 533 return (HMDeviceConsoleBufferClass 534 ::ReadConsoleOutputAttribute(pHMHandleData, 524 return (ReadConsoleOutputAttribute(pHMHandleData, 535 525 (LPWORD)arg1, 536 526 (DWORD)arg2, … … 546 536 ULONG2COORD(coordReadCoord, arg3); 547 537 548 return (HMDeviceConsoleBufferClass 549 ::ReadConsoleOutputCharacterA(pHMHandleData, 538 return (ReadConsoleOutputCharacterA(pHMHandleData, 550 539 (LPTSTR)arg1, 551 540 (DWORD)arg2, … … 561 550 ULONG2COORD(coordReadCoord, arg3); 562 551 563 return (HMDeviceConsoleBufferClass 564 ::ReadConsoleOutputCharacterW(pHMHandleData, 552 return (ReadConsoleOutputCharacterW(pHMHandleData, 565 553 (LPWSTR)arg1, 566 554 (DWORD)arg2, … … 576 564 ULONG2COORD(coordDestOrigin, arg3); 577 565 578 return (HMDeviceConsoleBufferClass 579 ::ScrollConsoleScreenBufferA(pHMHandleData, 566 return (ScrollConsoleScreenBufferA(pHMHandleData, 580 567 (PSMALL_RECT)arg1, 581 568 (PSMALL_RECT)arg2, … … 591 578 ULONG2COORD(coordDestOrigin, arg3); 592 579 593 return (HMDeviceConsoleBufferClass 594 ::ScrollConsoleScreenBufferW(pHMHandleData, 580 return (ScrollConsoleScreenBufferW(pHMHandleData, 595 581 (PSMALL_RECT)arg1, 596 582 (PSMALL_RECT)arg2, … … 601 587 602 588 case DRQ_SETCONSOLEACTIVESCREENBUFFER: 603 return (HMDeviceConsoleBufferClass 604 ::SetConsoleActiveScreenBuffer(pHMHandleData)); 589 return (SetConsoleActiveScreenBuffer(pHMHandleData)); 605 590 606 591 607 592 case DRQ_SETCONSOLECURSORINFO: 608 return (HMDeviceConsoleBufferClass 609 ::SetConsoleCursorInfo(pHMHandleData, 593 return (SetConsoleCursorInfo(pHMHandleData, 610 594 (PCONSOLE_CURSOR_INFO)arg1)); 611 595 … … 617 601 ULONG2COORD(coordCursor, arg1); 618 602 619 return (HMDeviceConsoleBufferClass 620 ::SetConsoleCursorPosition(pHMHandleData, 603 return (SetConsoleCursorPosition(pHMHandleData, 621 604 coordCursor)); 622 605 } … … 624 607 625 608 case DRQ_SETCONSOLEMODE: 626 return (HMDeviceConsoleBufferClass 627 ::SetConsoleMode(pHMHandleData, 609 return (SetConsoleMode(pHMHandleData, 628 610 (DWORD)arg1)); 629 611 … … 635 617 ULONG2COORD(coordSize,arg1); 636 618 637 return (HMDeviceConsoleBufferClass:: 638 SetConsoleScreenBufferSize(pHMHandleData, 619 return (SetConsoleScreenBufferSize(pHMHandleData, 639 620 coordSize)); 640 621 } … … 642 623 643 624 case DRQ_SETCONSOLETEXTATTRIBUTE: 644 return (HMDeviceConsoleBufferClass:: 645 SetConsoleTextAttribute(pHMHandleData, 625 return (SetConsoleTextAttribute(pHMHandleData, 646 626 (WORD)arg1)); 647 627 648 628 649 629 case DRQ_SETCONSOLEWINDOWINFO: 650 return (HMDeviceConsoleBufferClass 651 ::SetConsoleWindowInfo(pHMHandleData, 630 return (SetConsoleWindowInfo(pHMHandleData, 652 631 (BOOL)arg1, 653 632 (PSMALL_RECT)arg2)); … … 655 634 656 635 case DRQ_WRITECONSOLEA: 657 return (HMDeviceConsoleBufferClass 658 ::WriteConsoleA(pHMHandleData, 636 return (WriteConsoleA(pHMHandleData, 659 637 (CONST VOID*)arg1, 660 638 (DWORD)arg2, … … 664 642 665 643 case DRQ_WRITECONSOLEW: 666 return (HMDeviceConsoleBufferClass 667 ::WriteConsoleW(pHMHandleData, 644 return (WriteConsoleW(pHMHandleData, 668 645 (CONST VOID*)arg1, 669 646 (DWORD)arg2, … … 680 657 ULONG2COORD(coordSrcBufferCoord, arg3); 681 658 682 return (HMDeviceConsoleBufferClass 683 ::WriteConsoleOutputA(pHMHandleData, 659 return (WriteConsoleOutputA(pHMHandleData, 684 660 (PCHAR_INFO)arg1, 685 661 coordSrcBufferSize, … … 697 673 ULONG2COORD(coordSrcBufferCoord, arg3); 698 674 699 return (HMDeviceConsoleBufferClass 700 ::WriteConsoleOutputA(pHMHandleData, 675 return (WriteConsoleOutputA(pHMHandleData, 701 676 (PCHAR_INFO)arg1, 702 677 coordSrcBufferSize, … … 712 687 ULONG2COORD(coordWriteCoord, arg3); 713 688 714 return (HMDeviceConsoleBufferClass 715 ::WriteConsoleOutputAttribute(pHMHandleData, 689 return (WriteConsoleOutputAttribute(pHMHandleData, 716 690 (LPWORD)arg1, 717 691 (DWORD)arg2, … … 727 701 ULONG2COORD(coordWriteCoord, arg3); 728 702 729 return (HMDeviceConsoleBufferClass 730 ::WriteConsoleOutputCharacterA(pHMHandleData, 703 return (WriteConsoleOutputCharacterA(pHMHandleData, 731 704 (LPTSTR)arg1, 732 705 (DWORD)arg2, … … 742 715 ULONG2COORD(coordWriteCoord, arg3); 743 716 744 return (HMDeviceConsoleBufferClass 745 ::WriteConsoleOutputCharacterW(pHMHandleData, 717 return (WriteConsoleOutputCharacterW(pHMHandleData, 746 718 (LPWSTR)arg1, 747 719 (DWORD)arg2, … … 2519 2491 2520 2492 /* simply forward the request to that routine */ 2521 return ( HMDeviceConsoleBufferClass::WriteFile(pHMHandleData,2493 return (/*HMDeviceConsoleBufferClass::*/WriteFile(pHMHandleData, 2522 2494 lpvBuffer, 2523 2495 cchToWrite, -
trunk/src/kernel32/conbuffervio.cpp
r7550 r10010 1 /* $Id: conbuffervio.cpp,v 1. 6 2001-12-05 18:05:59sandervl Exp $ */1 /* $Id: conbuffervio.cpp,v 1.7 2003-04-11 12:08:35 sandervl Exp $ */ 2 2 3 3 /* … … 273 273 VioWrtCharStr(&pszBuffer[ulCounter], numchar, pConsoleBuffer->coordCursorPosition.Y, pConsoleBuffer->coordCursorPosition.X, 0); 274 274 pConsoleBuffer->coordCursorPosition.X += numchar; 275 VioSetCurPos(pConsoleBuffer->coordCursorPosition.Y, pConsoleBuffer->coordCursorPosition.X, 0); 275 276 } 276 277 ulCounter += numchar; … … 283 284 } 284 285 285 286 DWORD HMDeviceConsoleVioBufferClass::FillConsoleOutputAttribute(PHMHANDLEDATA pHMHandleData, 287 WORD wAttribute, 288 DWORD nLength, 289 COORD dwWriteCoord, 290 LPDWORD lpNumberOfAttrsWritten) 291 { 292 APIRET rc; 293 294 #ifdef DEBUG_LOCAL2 295 WriteLog("KERNEL32/CONSOLE: HMDeviceConsoleVioBufferClass::FillConsoleOutputAttribute(%08x,attr=%04x,%u,x=%u y=%u,res=%08x).\n", 296 pHMHandleData, 297 wAttribute, 298 nLength, 299 dwWriteCoord.X, 300 dwWriteCoord.Y, 301 lpNumberOfAttrsWritten); 302 #endif 303 304 if (HMDeviceConsoleBufferClass::FillConsoleOutputAttribute(pHMHandleData, 305 wAttribute, 306 nLength, 307 dwWriteCoord, 308 lpNumberOfAttrsWritten)) 309 { 310 rc = VioWrtNAttr((PBYTE)&wAttribute, *lpNumberOfAttrsWritten, dwWriteCoord.Y, dwWriteCoord.X, 311 0); 312 if (rc == NO_ERROR) 313 { 314 return TRUE; 315 } else 316 { 317 return FALSE; 318 } 319 } else 320 return FALSE; 321 } 322 323 DWORD HMDeviceConsoleVioBufferClass::FillConsoleOutputCharacterA(PHMHANDLEDATA pHMHandleData, 324 UCHAR ucCharacter, 325 DWORD nLength, 326 COORD dwWriteCoord, 327 LPDWORD lpNumberOfCharsWritten) 328 { 329 APIRET rc; 330 331 #ifdef DEBUG_LOCAL2 332 WriteLog("KERNEL32/CONSOLE: HMDeviceConsoleVioBufferClass::FillConsoleOutputCharacterA(%08x,char=%02x,%u,x=%u y=%u,res=%08x).\n", 333 pHMHandleData, 334 ucCharacter, 335 nLength, 336 dwWriteCoord.X, 337 dwWriteCoord.Y, 338 lpNumberOfCharsWritten); 339 #endif 340 if (HMDeviceConsoleBufferClass::FillConsoleOutputCharacterA(pHMHandleData, 341 ucCharacter, 342 nLength, 343 dwWriteCoord, 344 lpNumberOfCharsWritten)) 345 { 346 rc = VioWrtNChar((PCH)&ucCharacter, *lpNumberOfCharsWritten, dwWriteCoord.Y, dwWriteCoord.X, 347 0); 348 if (rc == NO_ERROR) 349 { 350 return TRUE; 351 } else 352 { 353 return FALSE; 354 } 355 } else 356 return FALSE; 357 } 358 -
trunk/src/kernel32/conbuffervio.h
r7549 r10010 1 /* $Id: conbuffervio.h,v 1. 2 2001-12-05 14:15:57sandervl Exp $ */1 /* $Id: conbuffervio.h,v 1.3 2003-04-11 12:08:36 sandervl Exp $ */ 2 2 3 3 /* … … 57 57 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); 58 58 59 virtual DWORD FillConsoleOutputAttribute(PHMHANDLEDATA pHMHandleData, 60 WORD wAttribute, 61 DWORD nLength, 62 COORD dwWriteCoord, 63 LPDWORD lpNumberOfAttrsWritten); 64 65 DWORD HMDeviceConsoleVioBufferClass::FillConsoleOutputCharacterA(PHMHANDLEDATA pHMHandleData, 66 UCHAR ucCharacter, 67 DWORD nLength, 68 COORD dwWriteCoord, 69 LPDWORD lpNumberOfCharsWritten); 70 59 71 }; 60 72
Note:
See TracChangeset
for help on using the changeset viewer.