Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Действительно хорошая документация по dll и lib, Ищу хорошие статьи применительно к C++ 
:(
    Опции темы
CyraxZ
Дата 13.12.2006, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



Нашёл много всяких статей по работе с dll, но, во-первых, многие друг друга дублируют, во-вторых, практически все статьи раскрывают какую-то конкретную узкую тему, в-третьих, про lib-файлы, если где и говорится, то вскользь...

Ищу хорошие статьи или электронные книги по работе с dll- и lib-файлами, где последовательно излагается общая информация с постепенным углублением. Т.е., начиная с назначения dll- и lib-файлов до их структуры, разновидностей, calling_convention и т.д.
Мне необходимо работать с dll- и lib-файлами в стандартном C++, т.е. не использовать директивы и команды какой-либо IDE. (Хотя пишу в C++ Builder, но в целях переносимости ничего Borland'овского не использую).

Т.е. документация требуется применительно стандарта С++, а также C++ Builder...
PM MAIL   Вверх
Daevaorn
Дата 14.12.2006, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 51
Всего: 70



Цитата(CyraxZ @  14.12.2006,  00:23 Найти цитируемый пост)
Ищу хорошие статьи или электронные книги по работе с dll- и lib-файлами, где последовательно излагается общая информация с постепенным углублением. 

Поскольку это изобретение Microsof, то логично предположить, что информация есть на их сайте, т.е. msdn:
http://msdn2.microsoft.com/en-us/library/ms682589.aspx
http://msdn2.microsoft.com/en-us/library/1...h12(VS.71).aspx
http://msdn2.microsoft.com/en-us/library/m...627(VS.80).aspx

Цитата(CyraxZ @  14.12.2006,  00:23 Найти цитируемый пост)
Мне необходимо работать с dll- и lib-файлами в стандартном C++, 

Стандарт С++ о них ничего не знает.

PM MAIL WWW   Вверх
OneFourth
Дата 14.12.2006, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 17.1.2006

Репутация: нет
Всего: нет



Посмотри еще на codeproject.com. В свое время нашел там не плохие статейки. 
PM   Вверх
zabivator
Дата 14.12.2006, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 7.6.2006
Где: нск

Репутация: 1
Всего: 2



Эх, хочется чего-то кроссплатформенного во-первых на уровне исходников, но и при условии не использования натива, на уровне бинарников... недостижимая мечта =)

Это сообщение отредактировал(а) zabivator - 14.12.2006, 16:46
--------------------
#include <zabivator>int main( int, char * [] ){   while( Zabivator::жив() ) Zabivator::моск()++;   return 0;}
PM MAIL WWW ICQ   Вверх
Любитель
Дата 14.12.2006, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



zabivator, достижимая. Раньше или позже 1-ый пункт будет в стандарте (все оси в том или ином виде реализуют сие). Второе невозможно (в чистом виде, только специальная промежуточная платформа вроде явы или дотнета). Даже самое тривиальное приложение использует осёвое апи. Ввод/вывод - уже ося.


--------------------
PM MAIL ICQ Skype   Вверх
zabivator
Дата 14.12.2006, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 7.6.2006
Где: нск

Репутация: 1
Всего: 2



Любитель, а если у меня подключаемая библиотека использует только stl  & boost & qt - то что мешает? В винде поднимается одни версии бинарников (буста и кутэ), в лине другие.

Это сообщение отредактировал(а) zabivator - 14.12.2006, 18:42
--------------------
#include <zabivator>int main( int, char * [] ){   while( Zabivator::жив() ) Zabivator::моск()++;   return 0;}
PM MAIL WWW ICQ   Вверх
JackYF
Дата 14.12.2006, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Цитата(zabivator @  14.12.2006,  18:41 Найти цитируемый пост)
В винде поднимается одни версии бинарников, в лине другие. 


Да, но хотя бы те же потоки в Винде и Линухах - это разная вещь. Как минимум с разными именами функций и типов.
Так что дело не только в бинарниках.



--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
CyraxZ
Дата 14.12.2006, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



Daevaorn
Цитата
Стандарт С++ о них ничего не знает.


Я имел ввиду _stdcall-соглашение...
PM MAIL   Вверх
Любитель
Дата 15.12.2006, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Цитата(zabivator @  14.12.2006,  18:41 Найти цитируемый пост)
В винде поднимается одни версии бинарников (буста и кутэ), в лине другие.

Технология вызова-то разная. Работа с динамическими библиотеками - это явно осёво-зависимая вещь.

CyraxZ, __stdcall точно не относится к стандарту (потому и начинается с подчёркиваний - так принято). С помощью него универсальной переносимости не добьёшься (компилер не обязан его реализовывать).


--------------------
PM MAIL ICQ Skype   Вверх
HappyLife
Дата 15.12.2006, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 642
Регистрация: 17.5.2006

Репутация: 3
Всего: 8



Думаю я знаю чего хочет автор, и это сделать невозможно.
Автор хочет уйти от использования delcspec'ов. Но компилятор, обязан знать, какие функции в конечном файле сделать экспортируемыми. От стандартна С++ это независит. Это даже не борландская примочка, а это соглашения Windows.
Экспорт и импорт ДЛЛ на чистом СИ и даже АПИ не сделать.

Это сообщение отредактировал(а) HappyLife - 15.12.2006, 16:37
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0511 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.