Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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]

При компиляции, тогда у тебя или порушенная Дельфи или серьезные нарушения в проекте.


Наверх

Титульная страница Поиск, карта сайта Написать письмо