[GPG 2 글 1.4] dll 클레스 변수 내보내기

GPG 시리즈 관련 질답, 논의 공간.

Moderator: 류광

비회원

dll 클레스 변수 내보내기

Post by 비회원 »

제가 A.dll 에서 클레스 전역변수를 선언해서 exe프로젝트나 다른 dll 쪽에서 저 전역변수를 사용할라면
어떻해 해야되죠??

// 이하 헤더파일 입니다.
class __declspec(dllexport) CLog
{
public:
CLog(void);
~CLog(void);

int GetInt( LPCTSTR npSection, LPCTSTR npKey );

private:
TCHAR m_FileName[32];
};

extern CLog* GLOG;

여기서 GLOG를 exe 프로젝트나 다른 dll에서 사용하는방법이요

제가 지금 exe프로젝트에서 GLOG = new CLog 하면
error LNK2001: "class CLog * GLOG" (?GLOG@@3PAVCLog@@A) 외부 기호를 확인할 수 없습니다.

이런게 뜨네요 도와주세요 ㅜ.ㅜ
비회원

링킹에러네요

Post by 비회원 »

라이브러리에서 못찾는듯.
라이브러리가 잘 포함되었는지 확인해보세요
realwin
Posts: 2
Joined: 2005-10-06 00:53
Location: NHN GAMES

Re: dll 클레스 변수 내보내기

Post by realwin »

비회원 wrote:제가 A.dll 에서 클레스 전역변수를 선언해서 exe프로젝트나 다른 dll 쪽에서 저 전역변수를 사용할라면
어떻해 해야되죠??

// 이하 헤더파일 입니다.
class __declspec(dllexport) CLog
{
public:
CLog(void);
~CLog(void);

int GetInt( LPCTSTR npSection, LPCTSTR npKey );

private:
TCHAR m_FileName[32];
};

extern CLog* GLOG;

여기서 GLOG를 exe 프로젝트나 다른 dll에서 사용하는방법이요

제가 지금 exe프로젝트에서 GLOG = new CLog 하면
error LNK2001: "class CLog * GLOG" (?GLOG@@3PAVCLog@@A) 외부 기호를 확인할 수 없습니다.

이런게 뜨네요 도와주세요 ㅜ.ㅜ
네임 맹글링 문제 인거 같은데요?
즐기지 못하면 패배자...
mastercho
Posts: 587
Joined: 2004-05-09 20:37

Post by mastercho »

class __declspec(dllexport) CLog 에서

라이브러리 쪽은 저게 맞는데

라이브러리 사용하는쪽은
class __declspec(dllimport) CLog 가 되어야 할거 같네요

보통은 메크로로 치환해서 쓰죠
Post Reply