2013-07-31 58 views
0

我有一個我在Visual FoxPro中創建的程序,我可以用參數打開它。 我的快捷方式的屬性:發送參數到一個已經打開的foxpro程序

Target: C:\Data\test.exe "5035246" 

打開了我的程序,並打開了我創建了一個表格,顯示我要ID 5035246.

信息現在,如果我想用不同的ID打開它快捷方式(當第一個窗口仍然打開時),它打開了另一個程序實例,我想要的是在我已經打開的程序中打開它(後來在我的表單中更改顯示ID)。

那麼如何發送一個參數給我已經打開的程序呢?

編輯:我發現一些代碼,檢查我的EXE的另一個實例是否正在運行,如果是的話,它退出,但是這並不能解決我的其他問題;將參數傳遞給我的打開程序。

+0

您是否在此程序中使用VFP 9?如果是這樣,您可以使用'BINDEVENT'來處理從其他程序發送的窗體上的常規窗口消息。 – Alejandro

回答

1

如果要從外部源向正在執行的Foxpro程序發送多個信號,則需要使用COM引用該對象,或者也可以使用中間數據存儲庫(dbf,txt文件)將該程序定期檢查。

如果您必須使用FoxPro,最好的解決方案是有一個命令行程序,其唯一的工作是接受參數,獲取引用到一個單獨的主exe文件併發送它的程序。類似以下內容:

PARAMETERS tcArg 
oApp = GETOBJECT("yourApp.mainClass") 
oApp.sendArg(M.tcArg) 
+0

或者將該程序作爲服務運行並實現套接字。 –

+0

@AlanB:你能詳細說明你的意思嗎?鏈接到MSDN不會不合適。 – DougM

+0

嗨!對不起,遲到的答覆,並感謝您的答案。我將通過命令行程序來研究您的可能解決方案DougM。 – Rob

相關問題