저는 영어를 정말 잘 모릅니다... 아는 몇 몇 단어로 유추하여 추측할뿐 정말 모릅니다...

그로 인해 잘못 이해한 부분을 잘못 전달할 수도 있습니다... 이 점 매우 죄송합니다..

 

 

참조 : http://lua-users.org/wiki/LuaAddons

     - 루아 관련 애드온 목록이 나열된 페이지 입니다.

 

 

위의 페이지에 래퍼 클래스에 관련하여 살펴보려 오랜만에 방문했는데 눈에 확 들어오는 부분이 있어 알아보기로 했습니다..

 

Development environments

  • [VSLua] (1.0) - A commercial solution to Lua language including an editor and debugger integrated within Visual Studio .Net (2002, 2003, 2005)

앗!? 이게 뭘까... 디버깅... visual studio .net ( ..... )

 

 

http://www.itrango.com/vslua/downloads/VSLuaBrochure.pdf

 

우선 위의 링크를 열어 2페이지를 보시라!!  뭔 말인지 몰라도 그림만 보면 된당께!!

 

 

 

 

1. VS .NET(2002,2003,2005) 를 이용하여 루아 스크립트 디버깅 하기

 

 

 

 

2. 전용 WATCH 창 제공

 

                  

 

 

 

3. 콜스택 정보 제공     ( 프로페셔널 )

 

                   

 

 

 

4. 문자 자동완성 기능 ( 비쥬얼 어시스트 주 기능이죠 ^^? )

 

                  

 

 

 

 

5. 소스세이프 관련 지원 ( 스크립트 파일 등록가능 )

 

                    

 

 

 

6. Syntax-Hi-lighting ( 대충 코드 컬러 표현? -_- )

 


 

 


 

 
7. 오프라인 컴파일 !?  ( 소스 빌드시 같이 된다는 건가.. )


 

 
여튼.. 그림만 봐서는 모르죠 ~~
루아를 쓰고 계시다면 한번 설치를 해서 해볼까요.
 
다운로드
  - VSLua will release shortly, in the meantime try out the beta release
 
 
 
대충 다음 다음 누르면 설치가 됩니다.
 
라이센스 부분이 나오는데 대략 이름만 입력했더니 30일 제한으로 설치가 되는군요.
 
 
두가지 사용법이 도움말에 있습니다.
 1. 직접 dll 을 로드하여 사용 하는법.
 2. 헤더와 라이브러리를 추가하기.
 
 
저는 후자를 선택했습니다.
 
 
[도구 -> 옵션 -> 프로젝트  ] 에 C:\Program Files\Trango Interactive\VSLua ........ 관련된 링크를 걸어줬습니다.
 
 
 
설치된 폴더 내에 샘플이 있습니다.
 
샘플을 보면 1. 방식을 사용했군요.
 
 
 lua_State* L = lua_open();
 
 luaopen_base(L);
 luaopen_table(L);
 luaopen_io(L);
 luaopen_string(L);
 luaopen_math(L);
 lua_settop(L, 0);
 
 lua_state::open(L);
 
#ifdef _DEBUG
 Init_VSLuaDebugger(L, 0);
#endif
 
 
디버거를 사용하기 위해선 위와 같이 코드를 삽입해 줘야 합니다.
 
자세한 설명 역시 제공된 헬프 도큐먼프 파일을 통해 확인할 수 있습니다.. ( 영문이죠 --; )
 
           ##########7*
 
위의 그림과 같이 VSLua 메뉴의 메뉴들을 크릭하여 활성화 시킵니다
 
루아 스크립트 내의 코드중에 브레이크포인트(F9)를 걸고 F5 를 눌러 디버깅을 시작했습니다.
 

##########8*
 
 
위의 그림과 같이 걸리는군요 ^^
 
 
 
watch창에 nNum 을 등록해 봅시다.
 
 

##########9*
 
 
위와 그림과 같이 nNum 을 블럭한 뒤 우측 상단의 버튼을 눌렀습니다.
 
 
 

##########10*
 
 
오!!!  와치창에 변수가 등록되었고 값도 나옵니다.
 
근데....  매우 심각한 기능상의 불편이 따르더군요..
 
 
스텝을 이동할 때마다 값이 자동으로 바뀔거라 생각했는데 변하질 않습니다...
 
 
와치창의 해당 변수 라인을 클릭하여 DEL 키로 지우고
 
 
다시 nNum 에 블럭.. [ Watch에 등록 ] 버튼을 누르고 나서야 갱신된 값을 확인 할 수 있었습니다..
 
 
 
이건 기능상 심각한 결함이 아닐까 생각되지만.. 고쳐지겠죠 ^^
 
 
 

##########11*
 
그러고 보니 VSLua 메뉴의 내용들이 더 늘어나고 변했습니다.
Step 에 관련된 내용이 눈에 들어오는군요.
 
바로.. VS .NET 자체에서 지원하는 디버깅 스텝이 아닌 자체 스텝을 이용해야 한다는 것입니다...
 
 
 
 
기본 버전과 프로페셔널 버전의 차이점 입니다.
Function and script call stack
##########12*
##########13*
Offline script compilation
##########14*
##########15*
Commercial license i.e. ability to release commercial products
##########16*
##########17*
Unlimited professional support
##########18*
##########19*
Priority based patches and bug fixes
##########20*
##########21*
 
가장 눈에 들어오는건 call stack 의 지원에 관련된 부분인것 같군요..
다른건 뭔소린지 잘 모르겠습니다 ...
 
 
 
 
Cost:  
Standard $99 (1 license limit / transaction)
 
Professional
No. of Licenses
Cost
1-2
$490
3-5
$440
6-10
$390
11-20
$340
21+
$290

 

헉...... 비싸군요...

 

 

 

끝으로..

 

· Sometimes the first time the debugger breaks at a breakpoint, no debug marker gets visible. Instead just the text of the line is hi-lighted. Issuing any command that moves the current statement produces the current statement marker and does not disappear after that.

· Intellisense gives weird behavior when Whole Tomato Software's addin Visual Assist is installed. This is perhaps due to them using non-standard practice with the Visual Studio. A fix is to disable Visual Assist from the menu. VSLua intellisense works fine afterwards. We recommend users to disable Visual Assist while editing Lua scripts with VSLua editor.
· A dummy entry appears in call stack at the very end (bottom of the combo box) when nested scripts are executed multiple times.

 

도움말에 있는 내용입니다.

 

 

◈ 이 솔루션이 처음에 잘 작동이 안될 수도 있습니다...

◈ 비쥬얼 어시스트를 사용 할 경우 문자완성기능이 정상적으로 작동하지 않습니다. 비쥬얼 어시스트를 꺼야 하더군요..

 

 

 

잘못된 정보나 부족한 정보를 추가로 공유했으면 합니다 ^^  글 남겨주세요~~

 

 

                                                                                                    '06. 8. 18(금) 회사에서...      권진영(되엔자앙)

 

                                                                                                    수정 및 배포는 자유!  출처는 분명히!

 

 

데브피아 vc 강좌쪽에도 글을 올렸습니다..

추가 덧글을 통해 추가정보를 얻을 수도.. ^^

www.devpia.com/forum/BoardView.aspx?no=7412&ref=7412&page=1&forumname=vc_lec&stype=

 

 

안정적인 DNS서비스 DNSEver DNS server, DNS service
Posted by 키르히아이스

댓글을 달아 주세요