|
답신에 감사를 드립니다.
이런 저런 류의 방법을 통해서 해결해보려했지만, 않되는군요.
역시, 간단해보이지만, 단시간내에 해결하기가 쉽지가 않네요.
VC에서 개발을 하는 중입니다. 간만에 사용하는거라. 속도가 붙일 않네요.
그럼, 즐프하세요. 흑흑흐흑
마술감자.명국진 님이 쓰신 글 :
: 확장DLL 사용여부는 확실하지 않지만 안되는걸로 알고 있습니다.
:
: 어쨌든 WINDOWS.H already included. MFC apps must not #include <windows.h> 이건
: 다음 파일을 최 우선으로 포함해야 합니다.
:
: afxwin.h
: afxext.h
:
: 옵션1
: afxdisp.h
: afxdtctl.h
:
: 옵션2
: afxcmn.h
:
:
: 왕대박 님이 쓰신 글 :
: : 음.. 안녕하세요. 이것이 생각보다 잘 않되네요. ^^;;
: : 혹시 성공하신분은 조언 부탁드립니다.
: : --------------------------------------------------------
: :
: : 오늘의 난제 :
: : =====================
: :
: : MFC확장형 DLL의 경우 MFC를 지원하지 않는 언어에서는 사용할 수가 없답니다.
: :
: : 볼렌드나 시만텍계열의 C++컴파일러는 MFC를 지원한다고 합니다.
: :
: : 즉, 어떻게 처리하면 MFC확장형 DLL을 C++Builder나 Delphi에서 사용할수 있을까요?
: :
: :
: : 사용할 툴 : C++Builder6 (왜냐면, C++이니까...)
: :
: : 사용할 SDK : DVR Card용 SDK(Company : Sentry)
: :
: :
: : 조금더 자세한 설명 :
: : =====================
: :
: : DVR 보드(Sentry사 보드)를 가지고 영상처리에 사용할 정지화면과 동영상(AVI)를
: :
: : 취득하려 하는데, VC++용 DLL로 제공을 합니다.
: :
: : 가만히 헤더 파일을 들여다보니, 확장형 DLL타입이 아닌 Class 타입으로 제공하더군요.
: :
: : 그것도 MFC확장 타입으로 말입니다.
: :
: :
: :
: : 아무것도 하지않고, Header만 삽입해도
: :
: : #include <afx.h>
: : #include <Classes.hpp>
: : #include <Controls.hpp>
: : #include <StdCtrls.hpp>
: : #include <Forms.hpp>
: :
: : #include ".\\DVRHpp\\common_def.h"
: : #include ".\\DVRHpp\\DeviceControl.h"
: :
: :
: : 이런류의 에러가 발생하더군요.
: :
: : WINDOWS.H already included. MFC apps must not #include <windows.h>
: :
: :
: :
: : //-------- 헤더 파일의 종류 ----------------
: : // 타입선언류
: : common_def.h
: : const_def.h
: : display_def.h
: : type_def.h
: :
: : //실제 구현부
: : DeviceControl.h
: :
: : //-------- DLL 파일의 종류 ----------------
: : // Capture에 관계된 dll
: : DCapture.dll
: : // Image에 관계된 dll
: : DxImage.dll
: :
: :
: :
: :
: :
: : //-------- 실제 구현부[헤더 일부] ----------------
: : //DeviceControl.h
: :
: : #pragma once
: :
: : #include "common_def.h"
: : #include "type_def.h"
: :
: : // CDeviceControl
: :
: : #define DX_SURFACE 16
: : typedef struct tagDISP_INFO
: : {
: : int nDevice;
: : BOOL fConvertDisplayAddress;
: : } DISP_INFO, *LPDISP_INFO;
: :
: :
: : class AFX_EXT_CLASS CDeviceControl : public CWnd
: : {
: : DECLARE_DYNAMIC(CDeviceControl)
: :
: : public:
: : CDeviceControl();
: : virtual ~CDeviceControl();
: :
: : protected:
: : // DECLARE_MESSAGE_MAP()
: : public:
: : int GetSystemVersion(void); // OS version
: :
: : private:
: : CWnd *m_pWnd;
: : CWnd *m_pDisplayParentWnd;
: : CRect m_DisplayRect;
: : HANDLE m_hDevVideoCapture[DEV_MAX_DEVICE];
: : HANDLE m_hDevAudioCapture[DEV_MAX_DEVICE];
: : int m_nDevAudioCount;
: : int m_nDevVideoCount;
: : int m_nDevChannelCount;
: : BOOL m_fDevOpen;
: : BOOL m_fDisplayO
: :
: : ..........중 략 ..................
: : }
: :
: : 음... 살짝 머리가 아프네요.
: : 그냥, VC로 다 짜야하나 --;;; GUI가 상당히 많은데..... --;;;
|