這是一個(gè)小Demo,用來介紹如何使用C#來調(diào)用我C++給出的NativeX編譯器和虛擬機(jī)的。具體的代碼可以在
Vczh Library++3.0里面找到。
VlTurtle.exe的工作原理十分簡單。首先界面由Ribbon和Intellisense構(gòu)成(超難寫,難免會(huì)有些問題……),其次按Run的時(shí)候會(huì)將代碼保存到Script\NativeX\NativeX.txt里面,使用Vle.exe編譯Script\NativeX\Make.txt,生成assembly文件。如果編譯失敗,就會(huì)出現(xiàn)Error.txt,然后這個(gè)編輯器將這個(gè)文件讀回去顯示在界面上。編譯成功之后,使用參數(shù)“Execute”再啟動(dòng)自己一次,新進(jìn)程會(huì)讀生成的assembly文件并使用vlscript.dll的虛擬機(jī)函數(shù)初始化,尋找main函數(shù)并執(zhí)行。
第一個(gè)alpha版本的Release我并不打算把編譯器也做進(jìn)vlscript.dll(其實(shí)代碼都在,就是沒extern),而打算讓Vle.exe充當(dāng)編譯器的作用。目前這個(gè)破Demo還沒做完,New/Open/Save/Save As/Stop點(diǎn)了沒反應(yīng),而且Run是阻塞的——也就是執(zhí)行進(jìn)程沒退出,編輯器就會(huì)假死。先偷懶了,過幾天再改好他,順便給那只破烏龜加點(diǎn)功能美化一下……
下面先貼圖。


posted on 2011-03-11 06:20
陳梓瀚(vczh) 閱讀(3560)
評論(3) 編輯 收藏 引用 所屬分類:
VL++3.0開發(fā)紀(jì)事