Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.013 c
4-1135870536
Sergey2005
2005-12-29 18:35
2006.03.19
Отловить завершение виндовс.


3-1138104210
box
2006-01-24 15:03
2006.03.19
Вычисления по связанным таблицам


15-1140533892
Fl@sh
2006-02-21 17:58
2006.03.19
Книга по FireBird 1.0.3 or 1.5..


2-1141306136
Layner
2006-03-02 16:28
2006.03.19
Как выбрать записи из таблицы без обращения к серверу?


2-1141196983
Urvin
2006-03-01 10:09
2006.03.19
Тормоза Firebird a





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский