??????? ???? ?? SQL Server ??? Windows NT

?????? ????????? ?????? ?????????
???? ???????: 160606 - ??? ???????? ???? ????? ????? ??? ???????.
??? ????? ??? ???????. ????? "??? ??" ??? ??? ??????? ??? ????.
????? ???? | ?? ????

?? ??? ??????

??????

??? ????? ????? ????? ?? ????? ???? ?? SQL Server ??? ????? ??? Windows NT. ????? ??? ??????? ????? ?????/????? I/O.

??????? ????

?? ??????? ?? "???????/?????" ?

?????/????? ????? ?? ????? ?????? ??? ????????? ?? ??? ??????? I/O ??? ?????? ??????. ???? ???? ??? ?????? ??? "?????? ??????? ??? ??????? (DMA). ?? ???? ???? ???? ?? ???????? ?? ??????? ?? ??? ??????? ??????? ??????. ???? ?????/????? ??? ????? ??? ??? ??? ??????? ???? ??????? ?????? ?? ?????? ????? ??? ?? ?????? ?????? ?? ???? ????? ??? ?????? ???? ???? ???? ??? ??? ?????. ?? ??? ?? ????. ?? ?????? ??? ???? ???????/?????? ???????/??????? ?????? ??????? ?? ????? ?????? ?? ??????? ????? ??? "?? ????" ?????? ?????. ???????? ??? ??????? ?? ????? ??? ?????? ???? ?????? ?????? ??? ??? ??????? ???????? ?? ??????? ???? ???? ???????? ??? ?????? ????.

??????? ?????

ReadFileScatter

???? ReadFileScatter ?????? ???????? ?? ??? ???????? ?? ?????? ?????? ????? ?????? ????? ????? ?? ???? OVERLAPPED ?????? ???????? ?? ??? ??????? ??????? ????????.
BOOL ReadFileScatter(
<WWBLOCKQUOTE>
    HANDLE hFile,                         // handle of file to read
    FILE_SEGMENT_ELEMENT aSegmentArray[], // array of buffer segments that
receives data
    DWORD nNumberOfBytesToRead,           // number of bytes to read
    LPDWORD lpReserved,                   // reserved must be NULL
    LPOVERLAPPED lpOverlapped             // address of structure for data
   );
				

????????

hFile


????? ??? ???? ??????. ??? ?? ???? ?? ?? ????? ???? ????? ?? GENERIC_READ ?????? ??? ?????.

??? ??? ????? ???????? FILE_FLAG_OVERLAPPED ?????? ??? ?????? I/O ??????? FILE_FLAG_NO_BUFFERING I/O ??? ??????.

aSegmentArray

???? ???? ?????? ??? ?????. ?? ???? ?????? ???? ????? ??? ??? ??? ???????? ????????. ?? ????? ???? ?????? ?????? ? ??? ?? ???? ??? ???????? ??? ?? ??? ????.

???? ????? ???? ??????? ???????? VirtualAllocVlm ?? ???? ?? ???? ??????? ????? ?? ?? ?????? ???? ???? ??????.

NNumberOfBytesToRead

????? ??? ????? ?????? ??????? ?? ?????.

lpReserved

????? ??? ?? ???? ???? NULL.

lpOverlapped

???? ??? ???? OVERLAPPED. ??? ????? ??????? ??? ?? ???? ??? ???? OVERLAPPED ????.

????? ??????? ???? ??? ??????? ??????? ?? ???? OVERLAPPED ? ?? ???? ReadFileScatter ??? ????? ????? ???????. ?? ??? ??????? ReadFileScatter ?????? FALSE ????? ?????? GetLastError ERROR_IO_PENDING. ???? ??? ????? ????????? ??????? ????? ????? ????? ???????. ???? ??????? ??????? ??? GetOverlappedResult/HasOverlappedIoCompleted ????? ????? ?????? I/O ?? GetQueuedCompletionStatus ????? ??????? I/O.

????? ?????

?? ??? ???? ?????? ???? ??????? ??? ?????. ?? ???? ??? ?????? ???? ??????? ?? ???. ?????? ??? ??????? ????? ???????, ??????? GetLastError. ??? ???? ReadFileScatter ??????? ??? ????? ????? ? ???? ?????? ?????? ??? ?????? GetLastError ERROR_HANDLE_EOF

???????

?? FILE_SEGMENT_ELEMENT 64 ??. ?????? ???? 64 ?? ????? ???? ?????? ??????; ????? ??? ?? ????????? ??? 32 ?? ?????? ?????? ??? ??????? ???? ?? ????? ?????? 64-?? ??? ???? ????.

WriteFileGather

???? WriteFileGather ?????? ???????? ?? ??????? ??????? ?????? ?????? ???????? ??? ???. ?? ????? ?????? ????? ??? ???????. ???? ?????? ????? ???????? ??? ????? ?? ?????? ?????? ?????? ???? OVERLAPPED.
BOOL WriteFileGather(
    HANDLE hFile,                // handle to file to write to
    FILE_SEGMENT_ELEMENT aSegmentArray [], // array of buffer segments
containing the data
    DWORD nNumberOfBytesToWrite,    // number of bytes to write
    LPDWORD lpReserved,             // Reserved must be NULL
    LPOVERLAPPED lpOverlapped       // pointer to structure needed for
overlapped I/O
   );
				

????????

hFile


????? ????? ?????? ??????? ???. ??? ?? ???? ?? ?? ????? ???? ????? ?? GENERIC_WRITE ?????? ??? ?????. ??? ??? ????? ???????? FILE_FLAG_OVERLAPPED ?????? ??? ?????? I/O ??????? FILE_FLAG_NO_BUFFERING I/O ??? ??????.

aSegmentArray

???? ???? ?????? ??? ?????. ?? ???? ?????? ???? ????? ??? ??? ??? ???????? ????????. ?? ????? ???? ?????? ?????? ? ??? ?? ???? ??? ???????? ??? ?? ??? ????. ???? ????? ???? ??????? ???????? VirtualAllocVlm ?? ???? ?? ???? ??????? ????? ?? ?? ?????? ???? ???? ??????.

NNumberOfBytesToWrite

????? ??? ????? ?????? ??????? ??? ?????.

????? ???? ??????? MS-DOS ???? Windows NT ???? ??? ??? ????? ????? ????? ???? ?????. ?? ???? ???? ?? ????? ????? ????? ???? ????? ?????? ?????? ??????.

lpReserved

????? ??? ?? ???? ???? NULL.

LpOverlapped

???? ??? ???? OVERLAPPED. ??? ????? ??????? ??? ?? ???? ??? ???? OVERLAPPED ????. ????? ??????? ???? ??? ??????? ??????? ?? ???? OVERLAPPED ? ?? ???? WriteFileGather ??? ????? ????? ???????. ?? ??? ??????? WriteFileGather ?????? FALSE ????? ?????? GetLastError ERROR_IO_PENDING. ???? ??? ????? ????????? ?????? ?????? ????? ????? ????? ???????. ???? ??????? ??????? ??? GetOverlappedResult/HasOverlappedIoCompleted ????? I/O ??????? ??????? ?? GetQueuedCompletionStatus ????? I/O ???????.

????? ?????

?? ??? ???? ?????? ???? ??????? ??? ?????. ?? ???? ??? ?????? ???? ??????? ?? ???. ?????? ??? ??????? ????? ???????, ??????? GetLastError.

???????

?? FILE_SEGMENT_ELEMENT 64 ??. ?????? ???? 64 ?? ????? ???? ?????? ??????; ????? ??? ?? ????????? ??? 32 ?? ?????? ?????? ??? ??????? ???? ?? ????? ?????? 64-?? ??? ???? ????.

??? ??? ??? ?? ????? ???? ?? ??? ????? ???? ????? ??????? ?????? ??? ??????? ???? ??? ???????.

????? ???? ??????? MS-DOS Windows NT ???? ??? ???? ????? ??? ????? ????? ????? ????? ? ?? ??????? WriteFileGather ?? ????? ?????. ?????? ?? ????? ???, ?????? ?????? SetEndOfFile.

?????

Windows NT 4.0 ?????? ????? ?????? Service Pack 2 ????? ????? ????? ????? enhancer ???? ?? SQL Server ??? ????? ??? Windows NT. ????? ??? ??????? ?????/????? ???????? ???????/???????.

?????? ??? ??????? ?????? ??? ????? ?????? ??? ???? ???? ???? ?? Windows NT 4.0 ? ???? ??? ??? ??????? ????? ?????? ?? "????? ??????? ?? Microsoft:
152734????? ?????? ??? ???? ???? ???? ?? Windows NT 4.0

???????

???? ???????: 160606 - ????? ??? ??????: 29/???? ?????/1435 - ??????: 1.1
????? ???
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
????? ??????: 
kbnosurvey kbarchive kbmt kbnetwork KB160606 KbMtar
????? ????
???: ??? ????? ??? ?????? ???????? ?????? ????? ???? ????? ?????????? ????? ?? ????????? ?????? ????. ???? ???? ?????????? ???? ?? ???????? ???????? ?????? ????????? ????? ????????? ???????? ????? ???????? ?????? ?? ?????? ??? ?? ???????? ???????? ?? ????? ??????? ?????? ??? ??????? ?????? ??. ?????? ?? ???? ??? ??????? ???????? ????? ?? ???? ????? ?????? ??? ????? ??? ????? ??????? ?? ????? ?? ?????? ??? ??? ??????? ??????? ?? ????? ????? ????? ????? ?????. ?? ????? ???? ?????????? ??????? ??? ????? ?? ??????? ?? ????? ?????? ?? ??? ????? ?? ????? ??????? ?? ???????? ?? ??? ???????. ???? ???? ?????????? ???????? ??? ????? ?????? ??????? ??????
???? ??? ????? ??????? ?????? ??????????160606

????? ???????

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com