Страница 1 из 1
GetFileSizeEx
Добавлено: 15 Май 2012, 15:54
adam975
Доброе время суток.
Подскажите, пожалуйста, Clarion'овский прототип сабжа.
Re: GetFileSizeEx
Добавлено: 15 Май 2012, 17:36
Губин Игорь
а зачем тебе 64бит? такие большие файлы копируешь?
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 9:53
adam975
Да, приходится.
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 12:45
Губин Игорь
А ты уверен, что кларион такое потянет? О_О Функция, случаем, не 64бит?
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 13:26
adam975
Другого выхода не вижу. А что такое "О_О"?
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 13:49
Губин Игорь
adam975 писал(а):А что такое "О_О"?
1. Это не Объектное Окружение
2. Это не Опен Офис
3. Это не Отец Онуфрий
Это просто обозначение смайлика! О_О =
По прежнему сомневаюсь в способности клариона это потянуть. Если функция 64бит, а задача её вызывающая 32бит...
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 14:15
adam975
Так и выдал бы сразу смайлик. А то я испугался
.
Насколько я понял из MSDN, эта функция возвращает 32-битные LoWord и HiWord, из которых можно получить требуемое.
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 14:36
Губин Игорь
Да, функция 32 разряда, не посмотрел. Но тогда проще... возьми за пример вызов GetFileSize, а вместо PLARGE_INTEGER передай группу
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 14:44
adam975
Пробовал. При компиляции получаю Unresolved External
.
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 14:55
Губин Игорь
А сама функция есть в Kernel32.dll? Напусти на DLL утилиту LibMaker и, если он там эту функцию обнаружит, сохрани её описание в отдельном LIB, который подключаешь к проекту. Это стандартная ситуация (наталкивался).
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 16:28
adam975
Сделал. Unresolved External исчезло, но зато появилась куча Duplicate Symbol на всё, что есть в Kernel32.dll.
Нет, Игорь, дело, видимо, не в этом. Ведь линкую же совершенно обычным образом, к примеру, CreateFile и всё работает. Спасибо за помощь. Наверно, всё-таки, у меня неправильно описан прототип GetFileSizeEx.
Re: GetFileSizeEx
Добавлено: 16 Май 2012, 16:55
Губин Игорь
adam975 писал(а):но зато появилась куча Duplicate Symbol на всё, что есть в Kernel32.dll.
Читайте внимательно посты великого меня!
В отдельном LIB надо сохранить
только описание GetFileSizeex!!!!
Остальные описания из этой LIB надо убрать!!!!! Тогда и не будет никаких Duplicate Symbol
Я так работал с user.dll - там есть функции которых нет в lib. Я запускал libmaker, удалял лишние описания и результат (
с описанием только одной функции) сохранял как
myuser.lib (
т.е. с именем отличным от имени по-умолчанию)
P.S. Неверное описание тут абсолютно не при чём.
P.P.S. Смотри результат во вложении
P.P.P.S. Можешь доброго меня особо не благодарить!
P.P.P.P.S. Ежели и это непонятно, то стукнись в аську.
Re: GetFileSizeEx
Добавлено: 17 Май 2012, 9:44
adam975
Спасибо, Игорь. Работает! А чем ты редактировал getfilesizeex.lib?
Re: GetFileSizeEx
Добавлено: 17 Май 2012, 10:20
Губин Игорь
Re: GetFileSizeEx
Добавлено: 17 Май 2012, 15:33
adam975
Семён Семёныч!