關(guān)于LUA開(kāi)發(fā)環(huán)境Decoda詳解
關(guān)于LUA開(kāi)發(fā)環(huán)境Decoda詳解是本文要介紹的內(nèi)容,主要是來(lái)了解lua開(kāi)發(fā)工具的應(yīng)用,在網(wǎng)上找到了這么有用資料,也與友們進(jìn)行分享一下,來(lái)看本文詳細(xì)內(nèi)容講解。
今天項(xiàng)目組的同事提起來(lái)要整個(gè)調(diào)式lua的工具,由于近期項(xiàng)目中用到lua的腳本日趨增長(zhǎng),導(dǎo)致腳本出問(wèn)題的幾率也日益增加~~ 。調(diào)試起來(lái)也不是特別方便,所以有必要整一個(gè)。于是就先找到了一個(gè)調(diào)式器,暫時(shí)可以滿足項(xiàng)目的需求。下面先轉(zhuǎn)帖一下網(wǎng)上一位朋友寫(xiě)的軟件使用幫助,感謝!
Decoda Tutorial 1:從Decoda啟動(dòng)宿主程序調(diào)試lua
我從Decoda剛發(fā)布就一直關(guān)注著,這個(gè)工具可以注入到宿主程序內(nèi)對(duì)lua腳本進(jìn)行調(diào)試,還可以設(shè)置斷點(diǎn)觀察變量的值,功能非常強(qiáng)大。
下面我介紹一下使用方法。
首先找到一個(gè)使用了lua的程序,我這里用wireshark舉例,這是個(gè)很好很強(qiáng)大的網(wǎng)絡(luò)截包工具,wireshark內(nèi)部使用了lua。沒(méi)有wireshark的請(qǐng)下去google一下并下載安裝,此為開(kāi)源軟件。
調(diào)試使用lua的宿主程序有兩種啟動(dòng)方式,一種是從Decoda啟動(dòng)宿主程序,另一種是先啟動(dòng)宿主程序然后用decoda注入。
本篇文章將介紹如何從Decoda啟動(dòng)宿主程序
啟動(dòng)Decoda并點(diǎn)擊Debug目錄下的StartDebuging,彈出一個(gè)工程設(shè)置對(duì)話框,點(diǎn)擊對(duì)話框里的第一行的Command右邊的按鈕,然后找到你的wireshark.exe可執(zhí)行文件,點(diǎn)擊OK。
此時(shí)wireshark程序開(kāi)始執(zhí)行,稍等一會(huì)在左邊的窗口中會(huì)出現(xiàn)一個(gè)init.lua文件,這就是這個(gè)wireshark使用的lua文件。(decoda可以檢測(cè)程序使用的所有l(wèi)ua文件并將他們顯示在左邊的窗口中)
現(xiàn)在你可以在這個(gè)init.lua里面設(shè)置斷點(diǎn)了,在disable_lua = true; do return end;這一句下斷點(diǎn),聰明人都看得出來(lái),只能在這里下斷點(diǎn),因?yàn)橄旅娴恼Z(yǔ)句都是不會(huì)執(zhí)行的,除非將這一句注釋。選擇Debug菜單中的Stop Debugging退出調(diào)試,然后再選擇Start Debugging重新啟動(dòng)調(diào)試,此時(shí)程序就會(huì)斷點(diǎn)到你設(shè)置斷點(diǎn)的這一行。
整個(gè)流程就是這樣,你可以在Watch里面輸入要監(jiān)視的變量,這些操作都和visual studio中一樣。
Decoda Tutorial 1:從Decoda啟動(dòng)宿主程序調(diào)試lua
我從Decoda剛發(fā)布就一直關(guān)注著,這個(gè)工具可以注入到宿主程序內(nèi)對(duì)lua腳本進(jìn)行調(diào)試,還可以設(shè)置斷點(diǎn)觀察變量的值,功能非常強(qiáng)大。
下面我介紹一下使用方法。
首先找到一個(gè)使用了lua的程序,我這里用wireshark舉例,這是個(gè)很好很強(qiáng)大的網(wǎng)絡(luò)截包工具,wireshark內(nèi)部使用了lua。沒(méi)有wireshark的請(qǐng)下去google一下并下載安裝,此為開(kāi)源軟件。
調(diào)試使用lua的宿主程序有兩種啟動(dòng)方式,一種是從Decoda啟動(dòng)宿主程序,另一種是先啟動(dòng)宿主程序然后用decoda注入。
本篇文章將介紹如何從Decoda啟動(dòng)宿主程序
啟動(dòng)Decoda并點(diǎn)擊Debug目錄下的StartDebuging,彈出一個(gè)工程設(shè)置對(duì)話框,點(diǎn)擊對(duì)話框里的第一行的Command右邊的按鈕,然后找到你的wireshark.exe可執(zhí)行文件,點(diǎn)擊OK。
此時(shí)wireshark程序開(kāi)始執(zhí)行,稍等一會(huì)在左邊的窗口中會(huì)出現(xiàn)一個(gè)init.lua文件,這就是這個(gè)wireshark使用的lua文件。(decoda可以檢測(cè)程序使用的所有l(wèi)ua文件并將他們顯示在左邊的窗口中)
現(xiàn)在你可以在這個(gè)init.lua里面設(shè)置斷點(diǎn)了,在disable_lua = true; do return end;這一句下斷點(diǎn),聰明人都看得出來(lái),只能在這里下斷點(diǎn),因?yàn)橄旅娴恼Z(yǔ)句都是不會(huì)執(zhí)行的,除非將這一句注釋。選擇Debug菜單中的Stop Debugging退出調(diào)試,然后再選擇Start Debugging重新啟動(dòng)調(diào)試,此時(shí)程序就會(huì)斷點(diǎn)到你設(shè)置斷點(diǎn)的這一行。
整個(gè)流程就是這樣,你可以在Watch里面輸入要監(jiān)視的變量,這些操作都和visual studio中一樣。
小結(jié):關(guān)于LUA開(kāi)發(fā)環(huán)境Decoda詳解的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助!