![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
GetFileSizeEx [D7, WinXP]
SergeyM © (2004-05-28 19:24:00)Доброго времени суток!
Мне нужно получить размер файла и я использую данную функцию, но в данной ф-ии надо чтобы Хендл был GENERIC_READ. В FileOpen такой фишки нет и я использую fmOpenRead при компиляции идет ругань на участок памяти не может типа рид или чето в этом духе. Подскажите как быть?
SergeyM (2004-05-28 20:45:00) [1]Все увидел ошибку, спасибо за помощь.
SammIk (2004-05-28 20:32:00) [2]Все теперь все ясно)
Спать надо дорогои сударь)
SergeyM (2004-05-28 20:30:00) [3]Кинул kernel32.dll в папку с приложением и шибка исчезла. Может я неправильно подключал библиотеку, как правильно прописать путь?
SammIk (2004-05-28 20:30:00) [4]А попробуи
CreateFile(pcharh:=(filename),0,0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,nil);
GetFileSizeEx(h,lpFileSize);
closehandle(h);
И еще попробуи написать не 'C:\windows\ sistem32\kernel32.dll';
А 'C:\windows\system32\kernel32.dll';.
А еще лучше, просто 'kernel32.dll'
SergeyM (2004-05-28 20:24:00) [5]WinXP
SammIk (2004-05-28 20:23:00) [6]А дорогои сер, у тебя какая винда?
SergeyM (2004-05-28 20:20:00) [7]Написал так
function GetFileSizeEx(hFile: THandle; lpFileSize: PLargeInteger): BOOL;stdcall;external 'C:\windows\sistem32\kernel32.dll';
но ошибка так и неисчезла
SergeyM (2004-05-28 20:17:00) [8]>Какой, какой FAR
А я почем знаю так в книге написано
Anatoly Podgoretsky (2004-05-28 20:07:00) [9]Какой, какой FAR
SammIk (2004-05-28 20:05:00) [10]Чего?
Просто поставь другои вызов, stdcall? и скорее всего ошибки не будет.
SergeyM (2004-05-28 19:59:00) [11]Дак она вроде только в длл используется?
SammIk (2004-05-28 19:48:00) [12]может stdcall попробовать?
SergeyM (2004-05-28 19:43:00) [13]Пишу так
GetFileSizeEx(FileOpen(ScanDir,fmOpenRead),sizef);
Если закоментарить то все работает, а если нет то ошибка.
саму ф-ию объявлял так
function GetFileSizeEx(hFile: THandle; lpFileSize: PLargeInteger): BOOL;far;external 'C:\windows\sistem32\kernel32.dll';
Anatoly Podgoretsky (2004-05-28 19:39:00) [14]При компиляции, тогда у тебя или порушенная Дельфи или серьезные нарушения в проекте.