MetaTrader拡張モジュール(DLL)の作成 - ページ 10

 

素晴らしいヘルプ!ありがとうございました。

 

[langtitle=es]自分だけのMetaTrader拡張(DLL)を作ろう[/langtitle].

[lang=es]Por favor alguine me podria enviar el material de la creacion de DLL, ya que lo slink estan desactivados!

Mi correo esalex_burgos77@hotmail.com

Saludos y gracias por su amable colaboraci�n.[/lang]ありがとうございます。

 

...

メタトレーダーフォルダのexperts/samples/DLLSampleサブフォルダには、完全に動作するサンプル(プロジェクト)があり、これを使用してmqlコードから呼び出し可能なカスタムDLLコードを構築することができます。

aldeberik:
[lang=es]Por favor alguine me podria enviar el material de la creacion de DLL, ya que lo slink estan desactivados!

Mi correo esalex_burgos77@hotmail.com

Saludos y gracias por su amable colaboraci�n.[/lang].
 

DevC++を使わず、Code::Blockで代用する。

Visual Studioをインストールするのが嫌な人(Visual Studio本体とアップデートの両方が巨大だから、あるいはOSがハックされているから)は、こちらを 参考にするとよいでしょう。DevC++の最新バージョンは7年前。このウェブサイトはデッドリンクだらけで、もう誰も管理していないようです。

私のお気に入りは、Code::Blockか NetBeans です。NetBeansはOracleのサポートを受けていますが、独自のコンパイラが付属していないので、NetBeans用のコンパイラを設定するのは、初心者にとって本当にイライラすることです。

IMHOでは、代わりにCode::Blockを試してみて ください。

ここで重要なアドバイスがあります:最近、MT4ビルド418は、DLLを呼び出すときに戻り値に問題があります。私の提案は、ある種のtest.dllを、パラメータを渡すか、dllに値を渡すかして呼び出し、その戻り値(整数、ダブル、文字列、配列かどうか、あなたはアイデアを持っています)をチェックすることです。もし戻り値が渡したものと正しければ、メインDLLを呼び続けることができます。そうでない場合は、メインDLLを呼び出さず、ユーザーに警告するためのアラートをポップアウトし、エラーを表示します。このtest.dllは、init時かstart時に1つだけ呼び出されるはずです。チェックするだけです。

楽しんでください。

 

...

私はVisual Studioを使っていますが、以前はcode::blocksを使っていて、あなたと同じ意見です。

Btw: ビルド418については正しいですが、ビルド419はそれを解決しています(少なくともその問題は解決されています)ので、ビルド419を使用すれば、むしろ安全です。

onewithzachy:
Visual Studioをインストールするのが嫌な人(Visual Studio本体とアップデートの両方が巨大だから、あるいはOSがハックされているから)は、ここを 見ることをお勧めします。DevC++の最新バージョンは7年前。Webサイトはデッドリンクだらけで、もう誰も管理していないようです。

私のお気に入りはCode::Blockか NetBeans です。NetBeansはOracleのサポートを受けていますが、独自のコンパイラが付属していないので、NetBeans用のコンパイラを設定するのは初心者にとって本当にフラストレーションが溜まります。

IMHOでは、代わりにCode::Blockを試してみて ください。

ここで重要なアドバイスがあります:最近、MT4ビルド418は、DLLを呼び出すときに戻り値に問題があります。私の提案は、ある種のtest.dllを、パラメータを渡すか、DLLに値を渡すかして呼び出し、その戻り値(整数、ダブル、文字列、配列かどうか、あなたはアイデアを持っています)をチェックすることです。もし返された値が渡したものと正しければ、メインDLLを呼び出すことができます。そうでない場合は、メインDLLを呼び出さず、ユーザーに警告するためのアラートをポップアウトし、エラーを表示します。このtest.dllは、init時かstart時に1つだけ呼び出されるはずです。念のため。

楽しんでください
 
mladen:
Btw: ビルド418についてはその通りですが、ビルド419はそれを解決しています(少なくともその問題は解決されています)ので、ビルド419を使用すれば、むしろ安全です。

Code::Blockの件だけでなく、一部のプログラマは未だにDevC++を好んでいて、sourceforgeのサイトにDevC++がいかに優れているかというコメントを残しています。どうやら、これらのプログラマはまだ更新していないようです。

MT418の件、最大のQは、次のMT4は、この種のバグから再び安全になるのだろうか?416から418にアップデートしたとき、当然、何らかの改善を期待したのですが、エラーは期待せず、代わりにエラーが発生しました。それを修正するのに1週間かかりましたが、すでに損失が発生しています。

そのため、プログラマーの中には、MT4の1つだけをアップデートして、すべてがOKかどうかをチェックすることを勧める人もいます。

来年2012年6月、mql4フォーラムで、彼らはビルド421に更新し、もはや416をサポートしないことについて。バグがないことを祈ります。

 

:)

これまでの経験から判断すると、その可能性はむしろあなたの希望とは反対側にあるのですが.まあ、それが助けになることを祈りましょう(強く、強く願っています).

 

これには大助かり!役に立つコメント です。

 

メタトレーダー+SSL接続

こんにちは。

https://www.url.com/file.xml から xml ファイルをダウンロードしたいのですが。

どのように私はメタトレーダーでこれを行うことができますか?どのDLLを使えばいいのでしょうか?

 

C#開発者のためのパス。MT4/5 -> C# DLL

アンマネージドC# DLLを作成し、メタトレーダーからアクセスしようとしている人の参考になるようなサンプルプロジェクトを書きました。Export C# DLL to Metatrader Code Sample のソースコードは、ダウンロード可能なVSプロジェクトも含め、ご覧いただけます。このコードは、Robert Giesecke氏による「C# Project Template for Unmanaged Exports」(下記リンク)を使用しています。

pipscooper:
メタトレーダー用のDLLをC++ではなくC#で書きたいというC#の開発者の方にも、その道が開かれています。アンマネージドエクスポートを使ったC#コードのMQL5への公開」と題した非常に興味深い記事がありますので、ご紹介します。

記事を読み飛ばし、2.5節以降を読んでみてください。

アンマネージドエクスポートを使用してC#コードをMQL5に公開する - MQL5 Articles

説明を読んでから、C#の「Unmanaged Export Library」のTemplateをダウンロードし、Zipファイルを正しいディレクトリに配置します(そのページの指示に従ってください)。

アンマネージドエクスポート用C#プロジェクトテンプレート

VSをロードし、"Unmanaged Export Library "テンプレートを選択します。コードサンプルに従います。これが誰かの役に立つことを願っています。