![]() |
在這個頁面顯示本主題全部的 7 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 請教奇狐能否執行外部的 執行檔 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=22183)
請教奇狐能否執行外部的 執行檔
版主和各位先進們好,我的問題題,奇狐內能有條件成立時發出聲音的函數。
想請教是否能在修件成立時,執行如C:\01.EXE,這類的執行檔,謝謝。
__________________
永遠學習、學習永遠
善為傳家寶
忍為積德門
回覆: 請教奇狐能否執行外部的 執行檔
引用:
最初由 阿酷 發表
版主和各位先進們好,我的問題題,奇狐內能有條件成立時發出聲音的函數。
想請教是否能在修件成立時,執行如C:\01.EXE,這類的執行檔,謝謝。
非常感謝版主的協助謝謝您
再請教如何加入判斷句,例如監控1個數值由0變成1,這樣的條件句,謝謝喔感激不盡。
例如:
AA:IF(C>O,1,0);
我的問題題,當AA的數值變化時,執行1個執行檔,請問是以下這樣寫嗎。
<%
dim AA
AA = 0
if AA=1 then
Set WshShell= CreateObject ("WScript.Shell")
WshShell.Exec("C:\01.EXE")
End If
%>
或是以下這個寫法
AA:IF(C>O,1,0);
<%
Sub AlertUser(AA)
If AA = 1 Then
Set WshShell= CreateObject ("WScript.Shell")
WshShell.Exec("C:\01.EXE")
End If
End Sub
%>
另外報告一下,只有AA有變化的時後再執行C:\01.EXE 這個執行檔,而不是AA變成1之後,每根K線都去執行01.EXE這個執行檔喔,還請協助非常感謝。
__________________
永遠學習、學習永遠
善為傳家寶
忍為積德門
回覆: 非常感謝版主的協助謝謝您
引用:
最初由 阿酷 發表
再請教如何加入判斷句,例如監控1個數值由0變成1,這樣的條件句,謝謝喔感激不盡。
例如:
AA:IF(C>O,1,0);
我的問題題,當AA的數值變化時,執行1個執行檔,請問是以下這樣寫嗎。
<%
dim AA
AA = 0
if AA=1 then
Set WshShell= CreateObject ("WScript.Shell")
WshShell.Exec("C:\01.EXE")
End If
%>
或是以下這個寫法
AA:IF(C>O,1,0);
<%
Sub AlertUser(AA)
If AA = 1 Then
Set WshShell= CreateObject ("WScript.Shell")
WshShell.Exec("C:\01.EXE")
End If
End Sub
%>
另外報告一下,只有AA有變化的時後再執行C:\01.EXE 這個執行檔,而不是AA變成1之後,每根K線都去執行01.EXE這個執行檔喔,還請協助非常感謝。
回覆: 回覆: 非常感謝版主的協助謝謝您
收到,再次感謝版主您的協助喔^^
如果變成這樣,訊號不會閃就不用記憶先前最後的狀狀,是否較好處理 謝謝。
AA:IF(H>O,1,0);
....您原來的公式置於此段之前....
LevelN:=MyLevel; //請自行將 MyLevel 改為您原來存放等級的變數
AlgName:='DemoBeep'; //請自行將 DemoBeep 改為指標名稱(最好用英文名稱,不要用中文)
AddStr:=StkLabel+'_'+NumToStr(DATATYPE,0);
UseFile:=GetAppMainDir+''+AlgName+'_'+AddStr+'.txt';
GetBeepSel:=0;
<%
LevelN = FFL.VarData("LevelN")
GetBeepSel = FFL.VarData("GetBeepSel")
UseFile = FFL.VarData("UseFile")
NowLevel = LevelN(ubound(LevelN))
Set FS = CreateObject("Scripting.FileSystemObject")
OldLevel = -1
If FS.FileExists(UseFile) then
Set RdFS = FS.OpenTextFile(UseFile, 1)
RdLevel = RdFS.ReadLine
if RdLevel>"" then OldLevel = CINT(RdLevel)
end if
GetBeepSel = 0
if OldLevel<>NowLevel then GetBeepSel = NowLevel
Set RdFS = FS.CreateTextFile(UseFile, true)
RdFS.Write NowLevel
RdFS.close
FFL.VarData("GetBeepSel") = GetBeepSel
%>
BeepSel:=C*0+GetBeepSel;
PLAYSOUND(BeepSel=1,0,GetAppMainDir+'\Effwav\eff01.wav');
PLAYSOUND(BeepSel=2,0,GetAppMainDir+'\Effwav\eff02.wav');
PLAYSOUND(BeepSel=3,0,GetAppMainDir+'\Effwav\eff03.wav');
.....以下省略.....
Set WshShell= CreateObject ("WScript.Shell")
WshShell.Exec("C:\01.EXE")
引用:
最初由 cgjj 發表
前根不成立,這根成立。當這根仍未完成時,訊號會浮動,一下符合,一下不符合。
若改取前一根計算之結果,雖然訊號不會浮動,但會隨著當前這根新行情,不斷觸發符合的動作。
故要實現您的想法,必須自己寫檔記憶先前最後的狀態,才有可能處理。
請參考此例,裡面有像這樣的應用
http://www.chiefox.com.tw/bbs/showt...&threadid=13655
__________________
永遠學習、學習永遠
善為傳家寶
忍為積德門
回覆: 回覆: 回覆: 非常感謝版主的協助謝謝您
引用:
最初由 阿酷 發表
收到,再次感謝版主您的協助喔^^
如果變成這樣,訊號不會閃就不用記憶先前最後的狀狀,是否較好處理 謝謝。
AA:IF(H>O,1,0);
.............
回覆: 回覆: 回覆: 回覆: 非常感謝版主的協助謝謝您
引用:
最初由 cgjj 發表
改那樣無效的,仍會隨著當前這根新行情,不斷觸發符合的動作...
因為必須跟上一次狀態做比較
沒有紀錄上一次狀態,就無從比較
那段程式不能那樣直接套用
請先了解一下其如何運作...
__________________
永遠學習、學習永遠
善為傳家寶
忍為積德門
| 全部時間均為台灣時間, 現在時間為04:56 | 在這個頁面顯示本主題全部的 7 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.