Форум программистов, компьютерный форум CyberForum.ru

Как узнать, какой функции какой файл *.a соответсвует? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Про деструктор и утечку памяти http://www.cyberforum.ru/cpp/thread446749.html
Доброе время суток. Вот что дано: #include <string> #include <vector> class Symbols { protected: void add(std::string str); // добавления символа virtual void inputData() = 0; // заполнение вектора data нужными символами
C++ Создать exe, запускающий exe Говорю сразу: я ничего не смыслю в програмировании; зачем подался на такой форум? Надеюсь получить ответ на свой вопрос,упавая на то, что его реализация не такая сложная. У меня возникла потребность, создать exe файл, который запускает другую программу. То есть: просто тупо играет роль посредника. Другими словами: что-то наподобие ярлыка, только exe , а не lnk. Существует ли решение... http://www.cyberforum.ru/cpp/thread446459.html
Странное поведение bool C++
Помогал отлаживать код и мы наткнулись на удивительное. Кодер скрыл отображение варнингов в VS2010. Метод М1 не всегда возвращал значение типа bool. И потому в методе М2, вызывающем метод М1, случилась такая ситуация, что: M1()!=true & M1()!=false Это нормальное поведение компилятора? Логика то понятна, но почему это вообще варнинг, а не еррор как в си шарпе?
Есть два потока и глобальный массив, могут ли потоки перепутать элементы глобального массива или другого контейнера? C++
Начать с массивов, допустим То есть ситуация такая: пусть имеется два потока и глобальный массив элементов int из двух элементов, один поток выводит в цикле значение нулевого элемента, а второй- значение первого; вот сижу думаю- могут ли они перепутать элементы? С одной стороны не могут потому как обращение к элементу по индексу однозначаено идентифицирует этот элемент; а с другой стороны,...
C++ Как средствами BC 3,1 запросить свободное место на указанном жёстком диске? http://www.cyberforum.ru/cpp/thread444851.html
Извиняюсь, если создал лишнюю тему, но ничего по своей проблемке я вроде не заметил. Если что-то есть, поправьте. А вопрос в следующем: как средствами BC 3,1 запросить свободное место на указанном жёстком диске?
C++ Указания адреса функции Есть библиотека. Нужно чтобы функция в моей библиотеке указывала на функцию в чужой. Вот мой код: typedef int (WINAPI WJMP)(); extern "C" __declspec(dllexport) WJMP Test(void); *Test= GetProcAddress(hLib, "Test"); Ошибки 1. error C2091: функция возвращает функцию подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304

Как узнать, какой функции какой файл *.a соответсвует? - C++

15.02.2012, 23:44. Просмотров 1373. Ответов 9
Метки (Все метки)

Друзья! Работаю с mingw, вот там надо так: если, допустим, вызываешь API- функцию, то надо подключать соответствующую библиотеку (?), делается это ключом линкёра примерно так:

-lwww файл

Эта команда значит, что libwww.a, находящийся в папке lib, подключится к проекту и что это значит Я НЕ ЗНАЮ. Да и честно говоря, как программиста приложений меня не должно это волновать.

Но иногда я не знал, какой функции какой файл *.a соответсвует- инет выручал, как правило запрос
Bash
1
 [Linker error] undefined reference to `имя_функции'
уже кто-то делал до меня и уже кто-то кому-топодсказывал ключ и всё было ОК. Но чем дальше в лес, тем больше дров, функции, используемые мною уже всё менее и менее употребимы- то есть никто с таким не сталкивался и подсказки в инете я найти не могу. Должен же быть способ узнать, есть ли среди набора файлов *.a нужный тебе или нет?

+++++++++++++++++++++++++++++++++++++++

Проведём аналогию с хидерами. Допустим, мне нужно узнать, в каком хидере объявлена функция
CreateDirectory, командую в папке с хидерами
Bash
1
FINDSTR /S /I "CreateDirectoryA" *h*> CreateDirectory.txt
и получаю CreateDirectory.txt такого содержания:

Bash
1
2
3
4
winbase.h:WINBASEAPI BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES);
winbase.h:#define CreateDirectory CreateDirectoryA
wininet.h:BOOL WINAPI FtpCreateDirectoryA(HINTERNET,LPCSTR);
wininet.h:#define FtpCreateDirectory FtpCreateDirectoryA
Всё, как на ладони. Хотелось бы подобное проедлывать с *.a файлами, спасибо, кто откликнется!

Добавлено через 1 час 32 минуты
Ну и сразу же, чтобы не кропать лишнюю тему- а можно ли самому скропать *.a файл на основе имеющейся dll-ки, если функция, которую линкё не видит, есть в этой dll-ке? То есть я качнул с одно места такие ресурсы:

x.h
libx.a
x.dll

подключал хидер и комплиил -lx, всё было нормально, пока линкёр не ругнулся на одну из функций (в хидере обхявлена, я прошерстилд dll-ку- она и там присутствует! Значит, дело в промежуточном звене libx.a; я не знаю его формата но если там какие-то адреса на функции, может его можно скропать на основе имеющегося x.dll- кропаем же мы экзешники!!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru