腳本lua
① lua里怎麼調用shell腳本
$cd /home/czfshine
生成要執行的sh腳本
$echo "pwd" > 1.sh
生成lua文件
$echo " os.execute(' sh ./1.sh') " > 1.lua
$ls
1.sh 1.lua
運行lua文件
$ lua 1.lua
/home/czfshine
② 怎麼使用lua腳本
LUA腳本語言基本使用方法是本文要將介紹的內容,主要是來學習Lua腳本語言的使用方法,具體內容來看本文詳解。
先要把下邊這些語句加入到VC中的頭文件,一般是加到StdAfx.h中
extern "C" { #include "lua.h" #include "lualib.h" #include "lauxlib.h" #pragma comment(lib, "lualib.lib") #pragma comment(lib, "lua.lib") }
然後一般來說都使用一個全局的LUA庫定義的這個東西
lua_State* g_Lua;
並且在工程處初始化時也給LUA初始化
g_Lua = lua_open(); **加這句 /* load Lua base libraries */ 網上一些教材中這么寫的 lua_baselibopen(g_Lua); 不過我這簡單的例子中不用到這些也行 lua_tablibopen(g_Lua); lua_iolibopen(g_Lua); lua_strlibopen(g_Lua); lua_mathlibopen(g_Lua);
緊接著聲明介面函數,注冊上函數
lua_register(g_Lua, "Message", myMessage);
好,初始化部分完了,看看介面函數的寫法。
函數必須這樣的格式來寫
static int Func(lua_State *L) { 靜態型函數,而且必須帶參數為lua_State結構指針 返回的值是代表返回的數據個數,比如return 2;就可以代表 返回兩個整數啊,浮點數什麼的,象LUA的腳本編寫就可以這樣 i, j = Func() , 這樣就表示可以從Func介面函數中得到兩個返回值了 return 0; }
執行腳本語句可以讀文件,也可以直接讀函數名
注冊了
lua_register(g_Lua, "Message", myMessage); static int myMessage(lua_State *L) { OutputDebugString("OK"); return 0; } lua_dofile(g_Lua, strCurPath); //讀文件,必須給出完整的文件路徑名稱 lua_dostring(g_Lua, "Message()"); //直接讀函數
文件中只要寫上
Message()
就可以了。
③ lua 腳本怎麼傳遞參數
只能調用了,多加一個參數,
for i=1,5 do
nRet_rw = math.random(6)
x002103_OnEventRequest( sceneId, selfId, targetId, eventId,nRet_rw )
end
或者把nRet_rw作為全局變數。
④ 手機上怎麼打開運行別人發過來的lua腳本文件(軟體)
手機上怎麼打開運行別人發過來的lua腳本文件(軟體),首先你的手機要支持這個文件,GG是自帶解密的,GG解不了,就手解mt就可以寫腳本,也有腳本模板。然後找到這個程序,把這個文件打開就可以了。
⑤ 腳本精靈lua 試用次數源代碼
加個試用子程序,代碼如下:
線程ID = BeginThread(試用子程序)
//下面放你的腳本主程序
你的主程序
sub 試用子程序
t=now
do
if DateDiff("n",t,now)=testtime then 'testtime 表示試用時間
Plugin.Msg.Tips "測試時間結束!"
Delay 1000
ExitScript
else
Delay 1000
end if
loop
End Sub
⑥ 請問自己的軟體如何運行Lua腳本
programming in lua 有相關的例子,一般腳本語言和c/c++之類的互相調用分兩類,一類是擴展,就是將c/c++模塊封裝起來給腳本語言用,用swig做封裝很方便的,一類是嵌入,就是在c/c++等應用中嵌入lua引擎,一般是用來分離經常變化的邏輯部分,比如WOW就是用lua語言作為擴展,用戶可以編寫lua腳本來完成一些特定功能的機器人。你要做的就是使用lua c api來在你的程序中執行lua。類似這種:
int iErr = 0;
lua_State *lua = lua_open (); // Open Lua
luaopen_io (lua); // Load io library
if ((iErr = luaL_loadfile (lua, "test.lua")) == 0)
{
// Call main...
if ((iErr = lua_pcall (lua, 0, LUA_MULTRET, 0)) == 0)
{
// Push the function name onto the stack
lua_pushstring (lua, "helloWorld");
// Function is located in the Global Table
lua_gettable (lua, LUA_GLOBALSINDEX);
lua_pcall (lua, 0, 0, 0);
}
}
lua_close (lua);
⑦ lua腳本怎麼讀取另外一個lua腳本的參數啊 比如另外一個腳本a.lua裡面有aaa=100,我
首先要看你在另一個腳本里的這個變數的作用域
如果是全局變數 就能訪問 如果是局部變數就訪問不到了
--main.lua
require"script"
print(aaa)
print(bbb)
--script.lua
aaa=100
localbbb=200
aaa可以訪問的到
bbb訪問不到
⑧ 怎樣在lua腳本中調用另一個lua腳本中的函數呢
require「函數腳本文件名字」
下面可以直接調用,也可以使用pcall方法安全調用
⑨ javascript腳本和Lua腳本哪個更強大
javascript作為web方面客戶端的腳本語言,目前沒有其他科替代.但是要是寫類似游戲腳本的話,javascript肯定比lua差遠了.
這兩個其實應用方向不一樣,所以不能這樣比的