확장 DLL 암시적으로 > MFC Q&A

본문 바로가기
사이트 내 전체검색

MFC Q&A

확장 DLL 암시적으로

페이지 정보

profile_image
작성자 HAVE
댓글 0건 조회 5,045회 작성일 10-11-20 03:07

본문

MFC AppWizard (dll) 선택합니다. ok 누른다.

MFC Extension DLL  (using shared MFC DLL) 확장DLL 선택합니다.(윈도우에서만 사용가능)

새로운 클래스를 만들어준다.

Class type 에서 Generic Class 선택하여준다.

클래스 정보를 적어주고 OK 눌러준다.

ClassView 에서 클래스를 만들어준다. 여기서 Test로 만들어준다.

Test 클래스에서 Plus() 멤버 함수를 만들어준다.

int Plus(int num);


int CTest::Plus(int num)
{
TRACE("TRACE 문자를 볼려면 VC++ 에서 View->Output 선택하고 아래에 Debug 에서 보시면됩니다.\n");
return num + num;
}

위에 문장을 아래와같이 만들어준다.

extern "C" __declspec(dllexport) int Plus(int num)
{
TRACE("TRACE 문자를 볼려면 VC++ 에서 View->Output 선택하고 아래에 Debug 에서 보시면됩니다.\n");
  return num+num;
}

컴파일한다.


이제 dll 다 만들었으니 새로운 프로젝터를 연다


mfc 실행파일을 만들어준다.  Test.exe 라는 프로젝트를 만들었다.

본인이 만든 ???.dll 와 ???.lib 파일을 복사해온다.


Project -> settings 선택한다.

Link 에서 Object/library modules: 에서 본인이 만든 .lib 파일명를 적어준다.


Test.h  에서 상부에 extern "C" __declspec(dllimport) int Plus(int numr); 와 같이 적어준다.

멤버변수를 만들어준다. int m_num;

컨트롤과 버튼을 만들어준다.

void CDTestDlg::OnButton1()
{
CClientDC dc(this);
CString str;
UpdateData(TRUE);
int num;
num = Plus(m_num);
str.Format("->%d",num);
dc.TextOut(10,10,str);
UpdateData(FALSE);

}

댓글목록

등록된 댓글이 없습니다.

Total 95건 1 페이지

검색

회원로그인

회원가입

사이트 정보

컴퓨터 정보,윈도우즈,리눅스,포토샵,3ds
맥스,프로그래밍 강좌팁

접속자집계

오늘
426
어제
324
최대
5,287
전체
629,973
Copyright © www.qdata.co.kr All rights reserved.