質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MQL4

MQL4とは、MT4(MetaTrader4)で用いられるプログラム言語です。MT4は無料で使えるチャートソフトあり、MQL4を使うことで分析ツールのオリジナルスクリプトの作成ができます。

DLL

DLL(Dynamic Link Library)とは、他のモジュールからも使用する事が出来る、関数とデータが格納されているモジュールのことです。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

解決済

2回答

690閲覧

mql4からinternet explorerを開きたい

yuma900608

総合スコア13

MQL4

MQL4とは、MT4(MetaTrader4)で用いられるプログラム言語です。MT4は無料で使えるチャートソフトあり、MQL4を使うことで分析ツールのオリジナルスクリプトの作成ができます。

DLL

DLL(Dynamic Link Library)とは、他のモジュールからも使用する事が出来る、関数とデータが格納されているモジュールのことです。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2019/06/02 07:55

前提・実現したいこと

mql4からinternet explorerでログイン画面を立ち上げてログインするプログラムを作成したいです。

発生している問題・エラーメッセージ

初心者のため、どのようにプログラムすればいいのかわからない状態です。
いろいろ調べてみたところ
c++、c#、javascriptなどでdll(internet explorerを立ち上げ、ログインする)を作成する。(まだ作れません)

mql4でdllを呼び出す。(わかりません)

ログインできる。

という認識なのですが、これで正しいでしょうか?

本日 visual stadio 2019 をインストールしました。

dllを作成できそうな言語はc#とVisual Basicの二つみたいです。

どちらもよくわからないので、まずC#を使ってプログラムしていこうと思っています。

C#で作成可能でしょうか?

タイトルから程遠い質問で申し訳ありませんが、回答よろしくお願いします。

該当のソースコード

C# dll c++ javascript

試したこと

調べに調べてvisual studio インストール と このサイトにたどり着きました。

補足情報(FW/ツールのバージョンなど)

なにから勉強して実践したらよいかわからないひよっこです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

どの言語でも良いのでinternet explorerを自動操縦するプログラムをまず作ると良いと思います。

それができたらMQL4からそのプログラムをWin32API経由で起動するようにすれば良いのです。

投稿2019/06/02 13:26

YouheiSakurai

総合スコア6142

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuma900608

2019/06/02 14:37

了解です。DLLのことは一旦保留してとりあえず自動操縦プログラムを作ってみます。 win32API経由という意味がさっぱり分かりませんが、必要になったときに調べてわからなかったら質問させていただきます。ありがとうございます。
guest

0

mqlはcベースの言語なのでC#で作ったDLLとやり取りするのは難しいかと思われます
(やり方はあるようですが難易度が高いうえにMT4のマクロ言語という特異なものなのでうまくできるかどうかもわかりません)
自身で開発することにこだわるのでしたらCを勉強して作成する必要があります
また、文字コードの問題もありますので、難易度が高めになることから素直にmql用のEAを開発している方に依頼する方がお金はかかりますが無難かと思います

投稿2019/06/02 10:53

len_souko

総合スコア1348

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuma900608

2019/06/02 14:32

C♯だとややこしいのですね汗どの言語がおすすめでしょうか? 文字コードの問題というのは文字化けなどが起こりコンパイルができないということでしょうか? プログラムを作成するという点に興味があり、今回は自作で作ろうと思っています。
len_souko

2019/06/03 13:22

C#がややこしいのではなくて、MQL4がMT4のマクロであるという点がややこしいだけです でもってMQLはCをベースにしているという事なのでCを勉強してしまえば、追加で必要なのはMT4のマクロの仕様という事になるのでCがおすすめという事になります C#に限らずCまたはC++以外の言語の場合はMQL4というCの方言とやり取りするやり方も調べる必要があり、下手すればCでラッパーDLLを作成する羽目になるかもしれないという事です いかんせんうまく動かないのがmql4が原因なのかcと別言語のやり取りのやり方自体なのかを判別するのが難しいからです あなたにとって実績のない手法が複数あるという事はどちらに原因があるのか分からない、でも実績のない手法が一つだけならおそらくはそこが問題だと分かるはずってことですね(Cでdllを作って呼び出す実績を作ってしまえば,mqlからcのdllを呼び出してうまく動かない場合にcでdllを呼び出してうまく動くことが確認できればmqlとの扱いが問題とわかるってことです) mql4でもそこそこ新しいものだとmql5の仕様に近づいていて、string型の文字コードがUTF-16らしいです なので、何も考えずにVC++でDLLを作成した際に文字列を受け取ろうとすると1文字目しか受け取れないという事態に陥るかと思います
len_souko

2019/06/03 13:33

継ぎ足し継ぎ足しで書いたから見づらい長さになっちゃったけど… >dllを作成できそうな言語はc#とVisual Basicの二つみたいです。 「Visual Studio Installer」を起動してインストールしたVS2019の右上の「変更」ボタンを押して、表示される「ワークロード」タブのなかから「C++によるデスクトップ開発」にチェックを入れてください なお、CやC++は色々と難しいところがあり結構挫折する人が多い言語です 理解してしまえばそう難しくはない(面倒はあるけど)のですが理解できずに足止めを食らう人が多いようです 直感で書きますが、質問にあるすべてをクリアするには1年以上はかかるものと覚悟した方が良いかと思われます
yuma900608

2019/06/04 11:02

返信ありがとうございます! visual studioでもつまづいていたので非常にありがたい回答です! 一年以上かかる見積もりなんですね汗 とりあえずプログラミング言語はc++に変更してdllを作ってみます! 今のところ自分の考えているところではdllは置いといてc++だけでieを起動するプログラムを作成してみます! ちなみに昨日から調べまくってvisual basicですがほぼコピペでie起動までは行けました! この調子でc++も行ってみます!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問