C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[76273] Re:빌더 6에서 헤더 파일에 없는 함수를 사용하고자 할경우 어떻게 해야 할까요?
지나가다가 [] 941 읽음    2022-03-13 17:44
우선 header 파일이 없다면, 컴파일시 헤더파일이 없다는 오류가 발생합니다.
해당 파일은 존재하는데, 사용하는 빌더 버전이 낮아서,
IFrameworkInputPane 에 대한 정의가 되어 있지 않은것이 문제입니다.

해당 정의는 Windows 8.1 에서 생긴듯 한데, 빌더 버전을 높이는게 좋은 방법입니다.
굳이 예전버전을 사용해야 한다면,
shobjidl.h의 경우, windows sdk에 포함되어 있는 shobjidl.h 파일의 내용을 일부 발췌하여 사용하여야 합니다.
손이 좀 가는 작업일겁니다.

참고로, 엠바카데로 사이트에가면 community 버전을 등록하면 무료로 사용할 수 있습니다
제한적이지만 상업적 사용이 가능합니다.

친구 님이 쓰신 글 :
: 안녕하세요
: 빌더 6에서 아래 터치 키보드 관련 c++ 소스를 컴파일 하고 싶습니다.
:
: 컴파일 하면 Undefined symbol 'IFrameworkInputPane' 에러가 나고요
:
: #include "Shobjidl.h" 에 있어야 하는데 제 해더 파일엔 없더라고요
: 이런경우 어떻게 해결이 가능 할까요?
:
:
:
: 
: #include "stdio.h"
: #include "Shobjidl.h"
: #include "Windows.h"
: 
: bool GetKeyboardRect( RECT *r ) {
: 	IFrameworkInputPane *inputPane = NULL;
: 	bool result = false;
: 	HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
: 	if (SUCCEEDED(hr)) {
: 		hr = CoCreateInstance(CLSID_FrameworkInputPane, NULL, CLSCTX_INPROC_SERVER, IID_IFrameworkInputPane, (LPVOID*)&inputPane);
: 		if (SUCCEEDED(hr)) {
: 			hr=inputPane->Location( r );
: 			if (SUCCEEDED(hr)) {
: 				result = true;
: 
: 				if( r->left == 0 )
: 				if( r->right == 0 )
: 				if( r->top == 0 )
: 				if( r->bottom == 0 )
: 					result = false;
: 			}
: 			inputPane->Release();
: 		}
: 	}
: 	CoUninitialize();
: 	return result;
: }
: 
: int main()
: {
: 	HRESULT hr;
: 	hr = CoInitialize(0);
: 
: 	RECT r;
: 	bool result = GetKeyboardRect( &r );
: 	printf( "result=%d RECT=%d,%d,%d,%d\n", result, r.left, r.top, r.right, r.left );
: 	return 0;
: }
: 

+ -

관련 글 리스트
76270 빌더 6에서 헤더 파일에 없는 함수를 사용하고자 할경우 어떻게 해야 할까요? 친구 896 2022/03/11
76273     Re:빌더 6에서 헤더 파일에 없는 함수를 사용하고자 할경우 어떻게 해야 할까요? 지나가다가 941 2022/03/13
76274         Re:Re:빌더 6에서 헤더 파일에 없는 함수를 사용하고자 할경우 어떻게 해야 할까요? 친구 902 2022/03/15
76277             Re: IFrameworkInputPane 정의가 반드시 있어야만 가능한 게 아님. 빌더(TWx) 1089 2022/03/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.