Code AardioLine:59复制
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.import
win
.ui;import
godking.vlistEx- mainForm =
win
.form(text="进程守护器"
;right=500
;bottom=247
) - mainForm.add(
- listview={cls=
"vlistEx"
;left=3
;top=4
;right=491
;bottom=199
;edge=1
;z=1
} - )
import
wsock.udp.asynClient;var
udpServer = wsock.udp.asynClient();import
console- udpServer.setBroadcast(
true
); - udpServer.bind(
"0.0.0.0"
, 1000
); - udpServer.onReceive =
function
(err) { -
var
str = udpServer.recvfrom(1024
); -
-
var
num = mainForm.listview.find(str, 1
, , 1
, true
, true
) -
if
(!num) { - mainForm.listview.insertRow(, str,
time
.now(), 0
) -
- }
-
else
{ - mainForm.listview.setCellText(num[
1
].row, 2
, time
.now()) - }
-
-
- }
- mainForm.listview.insertColumn(
"程序名称"
, 200
, , ) - mainForm.listview.insertColumn(
"时间"
, 150
, , ) - mainForm.listview.insertColumn(
"次数"
, 50
, , ) - mainForm.setInterval(
-
function
() { -
var
tm = time
.now(); -
var
listnum = mainForm.listview.count; -
-
for
(i = 1
; listnum; 1
) { -
var
c = tm.diffsecond(mainForm.listview.getText(i, 2
, false
)); -
var
num = mainForm.listview.getText(i, 3
, false
); -
if
(c > 9
) { - num++
- mainForm.listview.setCellText(i,
3
, num) -
- }
- console.log(num,
"处理时间"
, c) - }
-
- },
1000
- )
- mainForm.show();
return
win
.loopMessage();
要守护的程序直接发送UDP广告自己的程序名字就可以了。
Code AardioLine:12复制
1.2.3.4.5.6.7.8.9.10.11.12.- winform.setInterval(
-
function
() { -
-
var
udpClient = wsock.udp.client(); -
-
- udpClient.setBroadcast(
true
); -
-
- udpClient.sendto(
"test.exe"
, "255.255.255.255"
, 1000
); - },
1000
- )