環境xp sp3 , vs2008 sp1, luabind 0.8.1,lua 5.1.4 , boost 1_36_0
先把lua, luabind 編成靜態庫,(下圖只是debug,release類似):

做完之后整理,lua, luabind 以sdk 形式組織好,我是這樣組織:
\luabind_build\sdk\luabind\include
\luabind_build\sdk\luabind\msvc-9.0-sp1\lib
\luabind_build\sdk\lua\include
\luabind_build\sdk\lua\msvc-9.0-sp1\lib
這樣,把sdk中的東東保存一份,方便以后使用。寫一個MFC小程序測試
1 //關鍵代碼
2 //mfc class function
3 void CMFC_LuaDlg::SetEditText(const char* text)
4 {
5 Edit_1.SetWindowText(text);
6 UpdateData(FALSE);
7 }
8 //register
9 luabind::module(L)
10 [
11 luabind::class_<CMFC_LuaDlg>("mfc_dlg")
12 .def"set_text",&CMFC_LuaDlg::SetEditText)
13 ];
14 //load lua file
15 if (0==luaL_dofile(L,filepath))
16 {
17 ret=true;
18 }
19 //run lua function
20 luabind::call_function<void>(L,"update_text",dlg);
21
腳本內容:
1 function update_text(dlg)
2 dlg:set_text("你好,歡迎來到lua 腳本世界")
3 end
運行結果:
posted on 2009-05-07 00:46
清源游民 閱讀(1846)
評論(1) 編輯 收藏 引用 所屬分類:
C++ 、
Lua 、
MFC