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

Вниз

WriteFile в чем ошибка???   Найти похожие ветки 

 
Bers   (2003-11-25 11:10) [0]

Доброго времени суток!
Уважаемые Мастера, подскажите в чем ошибка:
var j:Cardinal;
Tmp:PChar;
NewFile:string;
HW:THandle;
begin
...
j:=Length(NewFile)+1;
Tmp:=StrNew(PChar(NewFile));
WriteFile(HW,Tmp,j,j,nil);
StrDispose(Tmp);
...
end;

Все вроде хорошо, но вместо нужной строки в файл пишется какая-то галиматья. В чем ошибка?

Заранее благодарен.
С Уважением, Андрей.


 
Reindeer Moss Eater ©   (2003-11-25 11:22) [1]

Tmp - должен быть адресом записываемого блока, а не указателем на него


 
Anatoly Podgoretsky ©   (2003-11-25 11:30) [2]

Эта галиматься значение переменной Tmp и последующих байт, если J > 4


 
Anatoly Podgoretsky ©   (2003-11-25 11:32) [3]

К тому же это лишняя промежуточная переменная. NewFile уже содержит все необходимое для записи в файл. Стоит намного почитать про работу со строками.


 
Bers   (2003-11-25 11:34) [4]

Спасибо.
Хотя в Help"е написано:
Points to the buffer containing the data to be written to the file.
С Уважением, Андрей.


 
Reindeer Moss Eater ©   (2003-11-25 11:47) [5]

Глагол Poins очень похож на существительное Pointer.
Но это не одно и тоже


 
Bers   (2003-11-25 11:53) [6]

А теперь вижу...


 
ZrenBy ©   (2003-11-25 11:59) [7]

Хе-Хе. Найдите разницу

из windows.pas)
function WriteFile(hFile: THandle; const Buffer; ...
function WriteFileEx(hFile: THandle; lpBuffer: Pointer; ...

А это их winapi
BOOL WriteFile(

HANDLE hFile,
LPCVOID lpBuffer,...
BOOL WriteFileEx(
HANDLE hFile,
LPCVOID lpBuffer,...


 
Reindeer Moss Eater ©   (2003-11-25 12:19) [8]

Ну и что? Смущает один и тот же тип данных у параметра?


 
icWasya ©   (2003-11-25 14:19) [9]

сдаётся мне, что в строке
WriteFile(HW,Tmp,j,j,nil);
на файл пишется j*j байт


 
MBo ©   (2003-11-25 15:49) [10]

WriteFile(HW,NewFile[1],Length(NewFile),j,nil);


 
Владислав ©   (2003-11-25 16:42) [11]

> icWasya © (25.11.03 14:19) [9]

Гадание на кофейной гуще навело на такую мысль? ;)



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

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

Наверх




Память: 0.49 MB
Время: 0.033 c
1-2202
Stas_K
2004-01-20 19:52
2004.02.02
XLSReadWriteII


14-2349
Talla2k
2004-01-10 17:07
2004.02.02
pdf надо разблокировать


7-2389
Arm79
2003-11-14 14:30
2004.02.02
потоки


1-2228
goliath
2004-01-19 16:29
2004.02.02
Help builders


14-2297
}|{yk
2004-01-12 16:33
2004.02.02
Вопросы из харьковского ЧГК. №4