MT4的命名管道 - Page 2
2 頁面的第 565 頁 FirstFirst 1234 ... 上一個上一個
Results 11 to 20 of 41

Thread: MT4的命名管道

  1. #11
    嗨7Bit,美好的一天,謝謝你的解釋,但我仍然沒有得到它。 4xCoder在他的線程開頭提到這是一個無DLL的代碼,這意味著(如你所知)沒有必要創建Dll文件。我有點困惑為什麼我需要將它包裝起來並在Dll文件中創建它。現在還有另一件事,如果該代碼是一個無Dll代碼,是否可以將mqh文件作為MT4的庫?我需要你的建議。你能解釋一下,我能理解整件事嗎,拜託?等待您的回复。祝你好運,Sf

  2. #12

    Quote Originally Posted by ;
    謝謝你的解釋,但我仍然沒有得到它。 4xCoder在他的主題開頭提到這是一個無DLL的代碼,這意味著(如你所知)沒有必要創建Dll文件。
    我也不太了解它。你提到你想用Delphi實現同樣的東西(除非我完全錯誤地理解你)。 Quote:任何成功創建此代碼的DLL文件..所以我假設你要在DLL內部使用相同類型的命名管道(而不是如此處所示的mql4)或者你想使用上面的mql4代碼並使在Delphi中管道的另一側(您希望與之通信的程序)。當你想用一種允許你定義記錄和char(或任何數組)的語言來實現它時,使用整數數組和大量的數據並將字符串壓縮到int數組來解決mql4缺點是沒有意義的。你想要的其他類型)和動態內存alloion和指針和類型轉換(甚至優秀的OOP和現成的類在其標準庫中實現並包裝所有這些低級別的東西)。

  3. #13
    4xCoder提交的此代碼根本不起作用。我花了整個晚上用代碼和谷歌搜索我的大腦,根本沒有結果。我會嘗試編寫一個有效的代碼並在此處提交!

  4. #14
    嗨CodersGuru,非常感謝您的反饋。我也很困惑,我們怎麼能單獨使用這個代碼!這是一個無意義的代碼。我相信它只是代碼的一部分,可用於連接其他代碼以集成工作代碼。這不能是像這樣的免費DLL代碼。它必須具有Mql4不可用的一些其他功能,但僅限Mql5。我可以在這篇文章中找到類似的東西:
    http://www.mql5.com/en/articles/115由於MQL5有一些新的額外功能,這是可能的,但我仍然想知道它是否與mql4有關。我會繼續挖掘。再次感謝分享。祝福,SF

  5. #15

    Quote Originally Posted by ;
    這不能是像這樣的免費DLL代碼。它必須具有Mql4不可用的一些其他功能,但僅限Mql5。
    這不是真的。沒有理由為什麼這樣的代碼不起作用。從查看代碼(自己沒有嘗試過)看來它已經滿足了所有需要,我認為沒有理由不應該這樣做。該帖子中的其他人報告說它確實有效。他們是騙子嗎?為什麼需要有其他功能?你缺少什麼功能?由於您自己是一位經驗豐富的專業編碼人員(您以$,$$$。$$購買了商業IDE,主要針對的是那些在80年代和90年代已經掌握了技能並且現在經營著自己的軟件公司的真正的老派程序員)您應該能夠回答上述問題並使代碼運行。或者只是忘記上面的代碼並用Delphi製作一個dll。

  6. #16
    3附件我無法按照我想要的方式使用管道,但我確實讓Mail Slots按照我想要的方式工作得很好。唯一缺少的是我無法收到來自多個發件人的郵件,我相信它應該這樣做,但無論如何它會收到一個發件人的罰款。也許有一點需要翻轉,你可以解決它。無論如何,這裡有一些我用來測試它的腳本。 ps:Pipes確實有效,但我認為他們需要讓他們的線程處於等待狀態並觀察新項目是否到達隊列,而郵件可以被輪詢以查看是否有消息然後進行處理。 ps2:7bit:嗯,我只是重讀了你的上一篇文章,不得不輕笑一下。真正的老派程序員 - 是的 - IBM大型機(那是什麼?)。
    https://www.forex-pedia.com/attachme...0956822101.mq4
    https://www.forex-pedia.com/attachme...2748702105.mq4
    https://www.forex-pedia.com/attachme...4945251232.mq4

  7. #17

    Quote Originally Posted by ;
    ps:Pipes確實有效,但我認為他們需要讓他們的線程處於等待狀態並觀察新項目是否會進入隊列
    在Windows上應該可以使用非阻塞管道,我99.9%肯定必須有一種方法以非阻塞方式輪詢有多少字節可供讀取,因為我看到了依賴於此的代碼。 TPipeStream有一個屬性NumBytesAvailable,它直接來自windows API,它只是一個薄的包裝器(現在太懶了,無法查看源代碼,但我99.9%肯定)。編輯:它的全部:
    http://msdn.microsoft.com/en-us/libr...79(VS.85).aspx

  8. #18

    Quote Originally Posted by ;
    我無法按照我想要的方式使用管道,但我確實讓Mail Slots按照我想要的方式工作得很好。唯一缺少的是我無法收到來自多個發件人的郵件,我相信它應該這樣做,但無論如何它會收到一個發件人的罰款。也許有一點需要翻轉,你可以解決它。無論如何,這裡有一些我用來測試它的腳本。 ps:Pipes確實有效,但我認為他們需要讓他們的線程處於等待狀態並觀察一個新項目到達隊列,而郵件......
    嗨Kenz,謝謝你的分享。你很高興這樣做。乾杯,SF

  9. #19

    Quote Originally Posted by ;
    是的,這是一個配偶,但現在的問題是你不能單獨使用Mql4。它必須連接到另一個軟件或庫,如Dll文件。我現在有人這樣做,但不想分享任何東西,只有這個想法。再次感謝,祝福,SF

  10. #20
    2附件我要感謝4xcoder啟動這個線程,並給出瞭如何使用自定義dll實現命名管道的方向。瀏覽Windows SDK後,我設法編寫了兩個腳本(通過將一些C語言示例移植到mql4)。這兩個腳本在客戶端 - 服務器方案中工作。術語服務器並不意味著它必須在遠程機器中。腳本本身非常簡單
    PipeServer腳本通過創建管道實例,輸入while循環並等待連接到剛創建的管道的客戶端(PipeClient腳本)來工作。客戶端連接後: - PipeServer將讀取客戶端消息(讀取管道) - 將其回送給客戶端(寫入管道),以便客戶端知道其消息已被服務器正確接收 - 關閉管道並返回到while循環,準備好為下一個pipeclient。每個客戶端將按順序/阻止模式提供服務。 PipeClient腳本通過連接到管道實例來工作。連接後: - 它將消息寫入管道 - 從服務器讀取回复 - 終止。要查看客戶端 - 服務器方案的工作原理,您需要將Pipeclient和Pipeserver運行到另一個MT4實例。也許命名管道的最有趣的功能是在Windows LAN環境中,只需更改客戶端管道名稱上的服務器名稱部分(從//.//pipe/pipename到//servernamepipepipename)即可連接到遠程機器上的MT4上運行的管道服務器。心連心
    https://www.forex-pedia.com/attachme...1810624899.mq4
    https://www.forex-pedia.com/attachme...7974407210.mq4

發布權限

  • 您不可發布新主題
  • 您不可回复
  • 您不可發布附件
  • 您不可編輯您的帖子
  •  
  • BB代碼是打開的
  • 表情符號是打開的
  • [IMG]代碼是打開的
  • [視頻]代碼是打開的
  • HTML代碼是關閉的
forex-pedia網站使用cookie 文字跟蹤
forex-pedia.com網站使用cookie 文字跟蹤,某些設定已經固定。您可以點擊此處閱讀我們的Cookie使用說明。 請點擊右鍵接受我們的cookies。如果您選擇繼續使用forex-pedia.com網站,我們將認為您接受我們的cookies。