Вниз
Скачать: CL | DM;

Dll или нет...   Найти похожие ветки 

 
Wiz@rd   (2005-12-17 22:20) [0]

Допустим есть любой файл, надо определить dll это или нет. Т.к. при LoadLibrary винда ругается на то что это не dll нифига. (Что-то типа реализации плагинов).


 
palva ©   (2005-12-17 23:41) [1]

Если расширение dll, значит dll. Если LoadLibrary ругается, значит ОС либо не может его прочитать, либо не может понять. Нужно проверить возвращаемое значение на ноль, вызвать GetLastError и по результату определить, что это не dll, или что к файлу нет доступа или что-нибудь еще.


 
Wiz@rd   (2005-12-17 23:49) [2]

ДА ё-маё, во-первых у меня расширение не dll, и скачиваются они прогой с нета, так что расширение не принципиально, хоть dll, но там можно подсунуть и не dll, или скачается html файл с каким-нибудь 404, а винда уже сама при LoadLibrary ругнётся error"ом что мол образ dll корявый, 0 то он вернёт, но этот error некрасиво.


 
palva ©   (2005-12-18 00:07) [3]

> но этот error некрасиво.
А почему некрасиво, если вы его перехватываете? Вы что, сами хотите его почитать и определить? Тогда читайте. Первые байты должны быть "MZ", а дальше купите книжку Румянцева и изучайте формат файла, проверяйте длины, контрольные суммы, проверяйте докачан ли файл, не было ли искажений при передаче.


 
Leonid Troyanovsky ©   (2005-12-19 09:36) [4]


> Wiz@rd   (17.12.05 23:49) [2]
> ДА ё-маё, во-первых у меня расширение не dll, и скачиваются
> они прогой с нета, так что расширение не принципиально,
> хоть dll, но там можно подсунуть и не dll, или скачается



Определить PE (NE) можно путем SHGetFileInfo.

--
Regards, LVT.


 
Игорь Шевченко ©   (2005-12-19 14:42) [5]

GetBinaryType


 
Leonid Troyanovsky ©   (2005-12-19 14:55) [6]


> Игорь Шевченко ©   (19.12.05 14:42) [5]

> GetBinaryType


Ну, то ж application, а запрос на dll.

--
Regards, LVT.


 
Игорь Шевченко ©   (2005-12-19 15:19) [7]

Leonid Troyanovsky ©   (19.12.05 14:55) [6]

Воистину. Век живи, век учись, спасибо :)


 
имя   (2005-12-26 10:12) [8]

Удалено модератором



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

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



Память: 0.46 MB
Время: 0.024 c
15-1140769316
Харько
2006-02-24 11:21
2006.03.19
Вопрос по видеокартам


1-1140033478
Kot_
2006-02-15 22:57
2006.03.19
QReport в ран тайме


2-1141584169
Варяг
2006-03-05 21:42
2006.03.19
Вопрос по EhLib


15-1140520497
devprom
2006-02-21 14:14
2006.03.19
Система управления процессом разработки


2-1141278220
nap<>
2006-03-02 08:43
2006.03.19
PopUp окно




   Наверх