Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

В чем проблема?   Найти похожие ветки 

 
_незнайка_   (2003-11-05 12:12) [0]

Привет..

Читаю сектора диска в буффер и т.д... все работает как полагается, НО как только я меняю размер любого окна или перетаскиваю его (explorer и т.п.) вылетает ошибка:"Not enought storage is available to process this command" Ошибка появляется в этом блоке:

pos64 := sectornum * BLOCKSIZE;
n := Windows.SetFilePointer( hDevice, rPos64.Lo, @rPos64.Hi, FILE_BEGIN );
rc := GetLastError;
if rc<>NO_ERROR then
begin
AddToLog(SysErrorMessage(rc));
Exit;
end;

В ЧЕМ БРОБЛЕМА?!


 
_незнайка_   (2003-11-05 12:54) [1]

На всякий случай приведу всю функцию, хотя она достаточно стандартная:

function TMainForm.ReadSector( const hDevice : THandle; const sectornum : int64) : Boolean;
var
rc : DWORD ;
n : DWORD ;
pos64 : int64 ;
rPos64 : int64Rec absolute pos64 ;
begin

Result := False;

pos64 := sectornum * BLOCKSIZE;
n := SetFilePointer(hDevice , rPos64.Lo, @rPos64.Hi, FILE_BEGIN );
rc := GetLastError;
if rc<>NO_ERROR then
begin
AddToLog(SysErrorMessage(rc));
Exit;
end;
if n <> rPos64.Lo then rPos64.Lo := n;
if not Windows.ReadFile( hDevice, HDDBuffer[0], BLOCKSIZE, n, nil ) then
begin
AddToLog(SysErrorMessage(GetLastError));
Exit;
end;
Result := true;
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.014 c
11-56544
Gandalf
2003-02-01 11:54
2003.11.17
KOLIndy?


6-56789
Novenkij
2003-09-21 14:40
2003.11.17
Как узнать размер Stream


3-56434
Шурик Ш
2003-10-29 16:22
2003.11.17
Компоненты ADO вместо BDE


1-56584
han-bratan
2003-11-05 13:15
2003.11.17
Передача функции-параметра в DLL


7-56937
webPauk
2003-09-03 17:00
2003.11.17
Console application





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский