Z>>Здравствуйте Lefay, Вы писали:
L>>>Не совсем понятно, что значит lib файл для dll библиотеки. Тут уж
L>>>что-нить одно — либо dll(динамическая библиотека) либо lib(статическая)
Z>>Ну почему же? В lib'е могут быть заглушки к dll.
L>Это то известно, но тогда зачем эту либу к проекту подцеплять,
L>я и говорю — туториал посмотреть надо, а без сорцов конечно можно
L>новую библиотеку скомпилить, но это весьма гемеройно
Вот инструкция по получению, на примере библиотеки qt-mt302.dll
Натравливаем на dll dumpbin
dumpbin /exports qt-mt302.dll > qt-mt302.def
Получаете примерно следующее
Microsoft (R) COFF Binary File Dumper Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
Dump of file qt-mt302.dll
File Type: DLL
Section contains the following exports for qt-mt302.dll
0 characteristics
3C8405B9 time date stamp Tue Mar 05 04:39:37 2002
0.00 version
1 ordinal base
14402 number of functions
14402 number of names
ordinal hint RVA name
1 0 0005877C ??0?$QAsciiDict@VQConnectionList@@@@QAE@ABV0@@Z
2 1 0005875A ??0?$QAsciiDict@VQConnectionList@@@@QAE@H_N0@Z
3 2 00005FD7 ??0?$QAsciiDictIterator@VQConnectionList@@@@QAE@ABV0@@Z
4 3 000060BE
??0?$QAsciiDictIterator@VQConnectionList@@@@QAE@ABV?$QAsciiDict@VQConnectionList
@@@@@Z
5 4 0004C360 ??0?$QDict@VQLibrary@@@@QAE@ABV0@@Z
6 5 0004C340 ??0?$QDict@VQLibrary@@@@QAE@H_N@Z
7 6 00031C41 ??0?$QDict@VQStyleSheetItem@@@@QAE@ABV0@@Z
8 7 00031C21 ??0?$QDict@VQStyleSheetItem@@@@QAE@H_N@Z
9 8 00034CE4 ??0?$QDict@VQTextFormat@@@@QAE@ABV0@@Z
10 9 00034CC4 ??0?$QDict@VQTextFormat@@@@QAE@H_N@Z
11 A 0014D1C8 ??0?$QIntDict@H@@QAE@ABV0@@Z
Вы эту хрень надо маленько подредактировать чтобы получить настоящий def файл
(Удаляете весь заголовок, лишние столбцы, и дописываете заголовок
def файла). Получиться должно примерно так:
LIBRARY qt-mt302
EXPORTS
??0?$QAsciiDict@VQConnectionList@@@@QAE@ABV0@@Z
??0?$QAsciiDict@VQConnectionList@@@@QAE@H_N0@Z
??0?$QAsciiDictIterator@VQConnectionList@@@@QAE@ABV0@@Z
??0?$QAsciiDictIterator@VQConnectionList@@@@QAE@ABV?$QAsciiDict@VQConnectionList
@@@@@Z
??0?$QDict@VQLibrary@@@@QAE@ABV0@@Z
??0?$QDict@VQLibrary@@@@QAE@H_N@Z
??0?$QDict@VQStyleSheetItem@@@@QAE@ABV0@@Z
??0?$QDict@VQStyleSheetItem@@@@QAE@H_N@Z
Теперь вы на все это натравливаете Lib
lib /DEF:qt-mt302.def
В результате получаете qt-mt302.lib который используете в проекте
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев