Getting  started with enuSpace SDK

enuSpace SDK를 이용하여 응용프로그램 개발 방법에 대하여 설명한다. 개발하고자하는 응용 프로그램에 SDK header 파일과 라이브러리를 포함한다.

 

Header files 

#include “enuLibrary.h”

#include “SvgDefine.h”

Library files

enuSpaceLib.lib



분류

항목

내용

환경

OS

Windows 8.1

개발도구

Visual Studio 2012

사용언어

MFC, C/C++


응용 프로그램 프로젝트를 생성하기 위해서는 다음과 같은 순서로 생성할 수 있다. 

1. Visual Studio2012를 실행하고 상단 메뉴에서 파일→새로 만들기→프로젝트를 선택한다.

2. 새 프로젝트 창에서 Visual C++→MFC→MFC 응용 프로그램을 선택하고, 프로젝트의 이름과 저장 경로를 입력한다. 

3. 확인 버튼을 클릭 후 MFC 응용 프로그램 마법사를 이용하여 샘플 프로젝트를 생성한다.


응용 프로그램 생성 절차

<응용 프로그램 프로젝트 생성 절차>


생성된 응용프로그램 프로젝트에 enuSpace SDK를 연계하기 위하여 프로젝트의 환경 설정을 수행한다.

1. 상단 메뉴에서 프로젝트→속성을 선택한다.

2. 프로젝트의 속성 페이지가 나타나면, 링커→추가 종속성 컬럼에 enuSpaceLib.lib를 입력한다. 

3. 프로젝트의 소스 코드에 “#include <enuLibrary.h>”를 입력하여 프로젝트의 환경 설정을 마무리 한다.

<enuSpace SDK 라이브러리 추가>


 C++

#include <SvgDefine.h>

#include <enuLibrary.h>


BOOL CSampleDlg::OnInitDialog()

{

HPROJECT m_Project = enuCreateProject();

enuRegisterFunction(L"RemoteChangePicture", RemoteChangePicture);

enuSetRuntimeMode(true);


CString strProjectFile = L"d:\\SampleProject\\sample.enup";

if (enuLoadProjectFile(strProjectFile) == false)

{

AfxMessageBox(L"Project를 로드 하지 못하였습니다.");

return true;

}

enuShowRuntimeView(NULL);

return TRUE; 

}


int RemoteChangePicture(lua_State *L)

{

const char* str;

str = luaL_checkstring(L,1);

CString strPageName(str);


str = luaL_checkstring(L,2);

CString strScriptName(str);


enuChangePictureAsync(strParam1.GetBuffer(0), strParam2.GetBuffer(0));

return 0;

}


HPROJECT enuCreateProject();

처음 기동 시 프로젝트를 생성하는 명령어이며, 프로젝트의 핸들을 반환한다.

bool enuRegisterFunction(wchar_t* strFunction, int (*pfunc)(lua_State* L));

enuSpace 스크립트에서 응용 프로그램의 함수를 호출하고자 하는 경우에, 응용 프로그램의 함수를 등록하여 스크립트에서 사용한다.
본 예시에서는 스크립트에서 RemoteChangePicture라는 함수를 사용하고, 스크립트에서 호출하였을 경우, 응용 프로그램의 RemoteChangePicture 함수가 콜백 함수 형태로 실행된다.

bool enuLoadProjectFile(wchar_t* pStrFileName);

enuSpace 편집기를 통하여 개발된 프로젝트를 로드 수행하는 역할을 수행한다.

void enuShowRuntimeView(HWND hWnd);

프로젝트에 설정된 뷰의 속성에 따라서 뷰를 디스플레이 한다


+ Recent posts