diff --git a/CommKrnl.dll b/CommKrnl.dll index f0984da..12a9f8e 100644 Binary files a/CommKrnl.dll and b/CommKrnl.dll differ diff --git a/TSLInterp.dll b/TSLInterp.dll index 4d4c76f..2b367aa 100644 Binary files a/TSLInterp.dll and b/TSLInterp.dll differ diff --git a/designer/utslvcldebuger.tsf b/designer/utslvcldebuger.tsf index a2d06c6..8b6b7ef 100644 --- a/designer/utslvcldebuger.tsf +++ b/designer/utslvcldebuger.tsf @@ -925,6 +925,7 @@ type TTslDebuga=class(TCustomControl) return; end case magicgetarray(d,array("result","CmdType"))of + //"ErrorReport": array("result","CmdText") "attachlist": begin r := magicgetarray(d,array("result","CmdData")); diff --git a/exec_tsl/tsleditor.sh b/exec_tsl/tsleditor.sh index bb47e99..4b8bce9 100644 --- a/exec_tsl/tsleditor.sh +++ b/exec_tsl/tsleditor.sh @@ -1,3 +1,20 @@ #!/bin/bash +LOCKFILE=/tmp/$(basename "$0").lock +if [ -e ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then + echo " $0 already running" + exit +fi + +# 确保退出时,锁文件被删除 +trap "rm -f ${LOCKFILE}; exit" INT TERM EXIT +#将当前程序进程id写入锁文件 +echo $$ > ${LOCKFILE} +# 做你需要的事情 export GDK_BACKEND=x11 -export LD_LIBRARY_PATH=../;../TSL ../exec_tsl/tsleditor.tsl -libpath ../designer/ +export LD_LIBRARY_PATH=../;../TSL ../exec_tsl/tslediter.tsl -libpath ../designer/ + +# sleep 1000 + +# 删除锁文件 +rm -f ${LOCKFILE} +