Re[3]: Не могу вызвать функцию из LIB-библиотеки
От: carpenter Голландия  
Дата: 19.04.13 07:31
Оценка:
Здравствуйте, bURov, Вы писали:

UR>Не пойму, зачем это мне.


Это называется интерес, а где есть интерес, там будет и профессионализм
Весь мир — Кремль, а люди в нем — агенты
Re[4]: Не могу вызвать функцию из LIB-библиотеки
От: BlackEric http://black-eric.lj.ru
Дата: 19.04.13 08:56
Оценка:
Здравствуйте, carpenter, Вы писали:

C>Здравствуйте, bURov, Вы писали:


UR>>Не пойму, зачем это мне.


C>Это называется интерес, а где есть интерес, там будет и профессионализм


Кстати, да. Зачем он там? Всегда писали, но вот зачем?
https://github.com/BlackEric001
Re[3]: Не могу вызвать функцию из LIB-библиотеки
От: Кодт Россия  
Дата: 19.04.13 09:19
Оценка:
Здравствуйте, bURov, Вы писали:

UR>Ещё нужно было для либы задать ключик "/MTd" (многопоточная),

UR>а был "MDd" (многопоточная DLL).

Этот ключик должен быть одинаковый у всех проектов солюшена. По крайней мере, у всех тех, которые статически линкуются друг с другом.
Вообще, /MD(d) предпочтительней, если в солюшене есть DLL.
Перекуём баги на фичи!
Re[5]: Не могу вызвать функцию из LIB-библиотеки
От: BlackEric http://black-eric.lj.ru
Дата: 19.04.13 10:51
Оценка:
Здравствуйте, BlackEric, Вы писали:

C>>Это называется интерес, а где есть интерес, там будет и профессионализм


BE>Кстати, да. Зачем он там? Всегда писали, но вот зачем?


Используется чтобы избежать множественного включения одного файла. Кроме конструкции #ifndef — #endif иногда применяется нестандартная #pragma once
https://github.com/BlackEric001
Re: Не могу вызвать функцию из LIB-библиотеки
От: Ckpyt  
Дата: 01.05.13 08:14
Оценка:
UR> utlib::hash(CString &StrVar);

Покажи код объявления функции.

Первое, что приходит в голову — забыл поставить экспорт:

#define DLL __declspec(dllexport)

void DLL foo();
Re[2]: Не могу вызвать функцию из LIB-библиотеки
От: bURov  
Дата: 06.05.13 06:24
Оценка:
Здравствуйте, Ckpyt, Вы писали:

UR>> utlib::hash(CString &StrVar);

C>Покажи код объявления функции.
C>Первое, что приходит в голову — забыл поставить экспорт:
C>#define DLL __declspec(dllexport)
C>void DLL foo();
Сейчас вот так. И проект собрался бехз ошибок с передачей параметра. В чем было дело, уже не пойму
// utlib.h
int foo(CString &StrVar);

// CallLIB.cpp
// вызов:
foo(m_sStrVar);
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.