Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
9-1945
TEST
2003-07-17 20:58
2004.02.02
Delphi поддерживает .mb, .ma, .lwo, xsi?


4-2426
Phantom
2003-11-24 19:57
2004.02.02
Как работать с функцией WinAPI - IsHungThread ?


1-2171
race1
2004-01-18 17:32
2004.02.02
tpaintbox.onpaint


3-2046
dalamar
2004-01-04 00:29
2004.02.02
Как получить количество таблиц в БД Access через ADO подключение?


3-2032
Mery
2004-01-06 07:52
2004.02.02
Экспорт SQL в EXCEL




   Наверх