Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.19;
Скачать: CL | DM;

Вниз

Длина текста в переменной   Найти похожие ветки 

 
Freezz   (2006-02-01 19:23) [0]

Приветсвую вас, мастера!

Вот значит написал я такой код


var
Buff: pointer;
Size: dword;
Bytes: dword;
dFile: dword;
begin
...
dFile := CreateFile(Pchar("textfile.txt"), GENERIC_READ, 0, nil, OPEN_ALWAYS, 0, 0);
ReadFile(dFile, Buff^, Size, Bytes, nil);
CloseHandle(dFile);
end;

теперь вопрос, этим способом читаю я строки из текстового файла
при выводе MessageBoxA(0,Buff,"",0);
все выводиться правильно
Как мне узнать длину строки, что я считал?
SizeOf(Buff) не работает почему то.
length(Buff) показывает несовместимость типов..
вот в этом собственно и проблема


 
Джо ©   (2006-02-01 19:34) [1]

1. Под Buff ты должен выделить память САМ. Еще ДО вызова ReadFile. Соответственно, размер этой области памяти ты знаешь сам.
2. Кол-во байт, действительно прочитанных, сохраняется в параметре lpNumberOfBytesRead, который у тебя вообще nil.


 
Джо ©   (2006-02-01 19:35) [2]

> [1] Джо ©   (01.02.06 19:34)

Сорри, насчет 2) проглядел. У тебя он сохраняется в Bytes.


 
Джо ©   (2006-02-01 19:41) [3]

Принцип таков:

 
 Size := 1024; // Размер области памяти
 GetMem (Buff,Size); // Выделяешь память под Buff

 if ReadFile(dFile, Buff, Size, Bytes, nil) then
 begin
   //
   // В этом месте в Buff будут находиться прочитанные данные
   // Кол-во байт, занимаемое данными, хранится в Bytes
   // Оно, разумеется <= Size
   //
 end;

 FreeMem (Buff); // Освобождаешь выделенную ранее память



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

Текущий архив: 2006.02.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
6-1131743288
Delphi_is_cool
2005-11-12 00:08
2006.02.19
Состояние сокета


2-1139037081
prep000
2006-02-04 10:11
2006.02.19
Как вставить в форму системное время?


15-1138180213
Red_imp
2006-01-25 12:10
2006.02.19
Народ посоветуйте программу для учета трафика


2-1138649839
azeton
2006-01-30 22:37
2006.02.19
Помогите написать формулу


8-1122035208
Wm.DIGGER
2005-07-22 16:26
2006.02.19
Как узнать название кодека по его тэгу :)