記事"MQLのソケットの使用およびシグナルプロバイダになる方法"についてのディスカッション - ページ 5 12345678910 新しいコメント Dmitriy Strelnikov 2017.05.20 14:01 #41 pavlick_:そんな同期TCPクライアントを手に入れた:μlにサーバーは必要ないので、クライアントだけでいい。表面的にテストしてみた。 ZЫЫ: 記事をありがとう。コンパイルの段階で、構造体の変換に失敗します :-(.'cannot cast Data_cz_char -> Data_cz_int ' とその逆。以前は動作していたようですが。別の端末のアップデート 後に動かなくなったようだ。何が問題なのだろう? --- 2017.05.20 14:46 #42 Dmitriy Strelnikov:何が問題なんだ? ユニオン Dmitriy Strelnikov 2017.05.20 15:10 #43 o_o: ユニオン ご回答ありがとうございます。しかし、質問はまだ関連しています。MQL4はユニオンをサポートしていません。少なくともドキュメントにはそう書かれています。また、調査しているうちに、さらにいくつかの疑問が生じました:- sendプロシージャとrecvプロシージャのint flagsパラメータ(最後の1つ)はどのような方法でもカバーされていません。私の場合、sendでは値-0をとり、recvでは-8をとります。- 元の投稿では、クライアントは同期的であると書かれていますが、この例ではサーバーに文字列を送信するだけです。レスポンスについてはどうですか?.馬鹿な質問ですみません。私はそれを理解しようとしていますが、私はまだそれを得ていません...あなたが私を助けることができるならば、お願いします。 私は多くのクライアントのサードパーティのサーバーとの相互作用のための作業クラスを実装したい。私はまだ立ち往生している、残念なことに。 Alain Verleyen 2017.05.20 15:44 #44 Dmitriy Strelnikov: 返信ありがとう。しかし、まだ質問が残っています。MQL4はユニオンをサポートしていません。少なくともドキュメントにはそう書いてあります。また、調査しているうちに、さらにいくつかの疑問が湧いてきました:- sendプロシージャとrecvプロシージャでは、int flagsパラメータ(最後の1つ)はどのような方法でもカバーされていません。私の場合、sendでは値-0をとり、recvでは-8をとります。- 元の投稿では、クライアントは同期的であると書かれていますが、この例ではサーバーに文字列を送信するだけです。レスポンスについてはどうですか?.馬鹿な質問ですみません。私はそれを理解しようとしていますが、私はまだそれを得ていません...あなたが私を助けることができるならば、お願いします。 私は多くのクライアントのサードパーティのサーバーとの相互作用のための作業クラスを実装したい。私はまだ立ち往生している、残念なことに。 取引、自動取引システム、取引戦略のテストに関するフォーラム MQL4言語におけるコードの変更 Alain Verleyen, 2017.05.18 22:10彼らはユニオンを 導入しました(MT4では 文書化されていませんが、ME 1599ではうまく機能 します):union Udata_32bytes { uchar d_uchar[32]; ulong d_ulong[4]; } data; void OnStart() { data.d_ulong[0]=0xFFEEDDCC; printf("uchar[%i] = %X",1,data.d_uchar[1]); } Dmitriy Strelnikov 2017.05.20 15:55 #45 Alain Verleyen: はい!組合は働く。ありがとう!2017年5月12日からユニオンの サポートが追加されたそうですね。素晴らしい!開発者がドキュメントに反映させるのは良いことだ。ユニオンを 使った簡単な例//+------------------------------------------------------------------+ //| スクリプト番組開始機能| //+------------------------------------------------------------------+ union AS { uint intN; uchar c[4]; } a; void OnStart() { //--- a.intN = 555; // uint - 4バイト // uchar[4] - 各1バイトの4つの要素からなる配列。 // 10進数で555、2進数4バイトで0000 0000 0010 1011となる。 // それぞれ、これは4桁の10進数の配列である。 Alert(IntegerToString(a.intN) + 「バイト・バイト・バイト + IntegerToString(a.c[0]) + ", " + IntegerToString(a.c[1]) + ", " + IntegerToString(a.c[2]) + ", " + IntegerToString(a.c[3])); } --- 2017.05.20 18:26 #46 Dmitriy Strelnikov: - sendプロシージャとrecvプロシージャでは、int flagsパラメータ(最後の1つ)は何もカバーされていない。sendでは値0を取るが、recvでは値8を取る。flags=8なんて書いてないから。- 元の投稿では、クライアントは同期的であり、サンプルはサーバーに文字列を送信することしか実装していない。レスポンスはどうなんだ?. このような形式の質問では、ここで 取り上げるのがよいでしょう。 Dmitriy Strelnikov 2017.06.07 19:20 #47 o_o:なぜなら、あなたがそれを作り上げているからだ。 フラッグは見当たらないよ。 このような形式の質問は、ここで 取り上げるのがよいでしょう。 GURUさんへ!私は作り話をする習慣はありません。どうやら私の勘違いで、質問はpavlick_という ニックネームのユーザー宛で、彼によって実装されたTCP_Clientクラスに関するもので、上記のこのスレッド-https://www.mql5.com/ru/forum/91150/page3#comment_2798881。お騒がせして申し訳ありませんでした。しかし、あなたからの反応がこれほど荒々しくなるとは思っていませんでした。 信じてほしいのだが、否定的な感情を抑えることが有効な場合もあるのだ。 Обсуждение статьи "Работа с сокетами в MQL, или Как стать провайдером сигналов" 2016.09.08www.mql5.com Опубликована статья Работа с сокетами в MQL, или Как стать провайдером сигналов: Автор: o_O Версии библиотеки 1... Guangdong Jin 2017.08.28 10:38 #48 同上同質問! Wemerson Guimaraes 2017.09.13 23:08 #49 MetaQuotes Software Corp.:新しい記事「MQLでソケットを扱う、またはシグナルプロバイダーになるには」が掲載されました:著者:o_OこのコードはMQL4で動作しますか?MQLのStartServer 関数でDLLのbind() 関数を呼び出すと、以下のメッセージが表示されます:2017.09.13 18:06:30.181 Server AUDCAD,H1: try bind...0.0.0.0:8081 2017.09.13 18:06:30.181 Access violation read to 0x00000012 in 'Ws2_32.dll' --- 2017.09.14 09:26 #50 Wemerson Guimaraes: このコードはMQL4で動作しますか?ソースはx64用にコンパイルされています。すべてのポインタを32ビットに変更する必要があります。例えば、SOCKET64の代わりにSOCKET32を使うなど。 12345678910 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
そんな同期TCPクライアントを手に入れた:
μlにサーバーは必要ないので、クライアントだけでいい。表面的にテストしてみた。
ZЫЫ: 記事をありがとう。コンパイルの段階で、構造体の変換に失敗します :-(.
'cannot cast Data_cz_char -> Data_cz_int ' とその逆。
以前は動作していたようですが。別の端末のアップデート 後に動かなくなったようだ。
何が問題なのだろう?
何が問題なんだ?
ユニオン
ご回答ありがとうございます。しかし、質問はまだ関連しています。MQL4はユニオンをサポートしていません。少なくともドキュメントにはそう書かれています。
また、調査しているうちに、さらにいくつかの疑問が生じました:
- sendプロシージャとrecvプロシージャのint flagsパラメータ(最後の1つ)はどのような方法でもカバーされていません。私の場合、sendでは値-0をとり、recvでは-8をとります。
- 元の投稿では、クライアントは同期的であると書かれていますが、この例ではサーバーに文字列を送信するだけです。レスポンスについてはどうですか?.
馬鹿な質問ですみません。私はそれを理解しようとしていますが、私はまだそれを得ていません...あなたが私を助けることができるならば、お願いします。
私は多くのクライアントのサードパーティのサーバーとの相互作用のための作業クラスを実装したい。私はまだ立ち往生している、残念なことに。
返信ありがとう。しかし、まだ質問が残っています。MQL4はユニオンをサポートしていません。少なくともドキュメントにはそう書いてあります。
また、調査しているうちに、さらにいくつかの疑問が湧いてきました:
- sendプロシージャとrecvプロシージャでは、int flagsパラメータ(最後の1つ)はどのような方法でもカバーされていません。私の場合、sendでは値-0をとり、recvでは-8をとります。
- 元の投稿では、クライアントは同期的であると書かれていますが、この例ではサーバーに文字列を送信するだけです。レスポンスについてはどうですか?.
馬鹿な質問ですみません。私はそれを理解しようとしていますが、私はまだそれを得ていません...あなたが私を助けることができるならば、お願いします。
私は多くのクライアントのサードパーティのサーバーとの相互作用のための作業クラスを実装したい。私はまだ立ち往生している、残念なことに。
取引、自動取引システム、取引戦略のテストに関するフォーラム
MQL4言語におけるコードの変更
Alain Verleyen, 2017.05.18 22:10
彼らはユニオンを 導入しました(MT4では 文書化されていませんが、ME 1599ではうまく機能 します):
union Udata_32bytes { uchar d_uchar[32]; ulong d_ulong[4]; } data; void OnStart() { data.d_ulong[0]=0xFFEEDDCC; printf("uchar[%i] = %X",1,data.d_uchar[1]); }はい!組合は働く。ありがとう!2017年5月12日からユニオンの サポートが追加されたそうですね。素晴らしい!
開発者がドキュメントに反映させるのは良いことだ。
ユニオンを 使った簡単な例
- sendプロシージャとrecvプロシージャでは、int flagsパラメータ(最後の1つ)は何もカバーされていない。sendでは値0を取るが、recvでは値8を取る。
flags=8なんて書いてないから。
- 元の投稿では、クライアントは同期的であり、サンプルはサーバーに文字列を送信することしか実装していない。レスポンスはどうなんだ?.
なぜなら、あなたがそれを作り上げているからだ。 フラッグは見当たらないよ。
このような形式の質問は、ここで 取り上げるのがよいでしょう。GURUさんへ!私は作り話をする習慣はありません。どうやら私の勘違いで、質問はpavlick_という ニックネームのユーザー宛で、彼によって実装されたTCP_Clientクラスに関するもので、上記のこのスレッド-https://www.mql5.com/ru/forum/91150/page3#comment_2798881。
お騒がせして申し訳ありませんでした。しかし、あなたからの反応がこれほど荒々しくなるとは思っていませんでした。
信じてほしいのだが、否定的な感情を抑えることが有効な場合もあるのだ。
同上同質問!
新しい記事「MQLでソケットを扱う、またはシグナルプロバイダーになるには」が掲載されました:
著者:o_O
このコードはMQL4で動作しますか?
MQLのStartServer 関数でDLLのbind() 関数を呼び出すと、以下のメッセージが表示されます:
このコードはMQL4で動作しますか?
ソースはx64用にコンパイルされています。
すべてのポインタを32ビットに変更する必要があります。
例えば、SOCKET64の代わりにSOCKET32を使うなど。