シグナル画像をFTPでサーバーにアップする その2

ここでは、「シグナル画像をFTPでサーバーにアップする その2」 に関する記事を紹介しています。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
シグナル画像をFTPでサーバーにアップする その2

前回、画像を保存する所まで行いました。
後は保存した画像をアップすれば終了なのですが、色々と準備が必要です。



FTPサーバーの準備


まずはアップするサーバーを用意します。
FTPでアップできる所なら、有料・無料何処でも構いません。
私はFC2を使用しています。


メタトレーダーでFTPを使用できるように設定する


[ツール]→[オプション]→[Publishe]で下の図を参考に設定してください。

ftp設定


1,Account : 接続している口座(デモ含)のアカウント番号を入力
2,FTP server : 用意したFTPサーバーのアドレスを入力する。
  ※http://~ではないです。サーバー開設時に設定項目として教えてもらえるはずです。
3,FTP path : アップする場所です。※フォルダー指定を行わないときは「 / 」と入力
4,FTP login : FTPサーバーへログインする時の LOGIN ID
5,FTP password : FTPサーバーへログインする時の password
6,Refresh every : 転送を行う周期(分単位)※特に設定の必要はありません
7,Passive mode : ルーター(ブロードバンドルータ等)を経由している場合はチェックする。

※Passive modeとはデータ送信用ポートを指定する機能です。
 通常、送信用ポートは決まっているが、ルーターのNAT機能を使ったり、外部からの接続を拒否している場合、FTPサーバからの接続ができなくなります。しかし、クライアント側からあえて送信する事によって・・・・・・・・


とりあえず、チェックを入れておいてください。

TESTボタンを押して、ファイルを転送します。(このときのファイルはチャート画像ではありません)


FTPサーバーを覗いて見る


ここで、FTPサーバーにログインして、実際にファイルが転送されているか確認してみます。
「Publishe」は取引履歴を自動的にアップロードする機能です。
FTPサーバーに「Statement.htm」というファイルがあれば成功です。


コードをかいてみる


FTPサーバーにアップする関数はSendFTP()です。

bool SendFTP(string filename, string ftp_path=NULL)

Parameters:


filename - 送信しようとするファイル
ftp_path - FTPパス。もしパスが指定されていなければ、設定された値が使われる。



Sample:


int lasterror=0;
if(!SendFTP("report.txt"))
lasterror=GetLastError();



解説:

サンプルは"report.txt"というファイルをアップしています。


前回のコードに一行足すだけで完成です。


int start(){
WindowScreenShot("tester.gif",640,480);
SendFTP("tester.gif");
return(0);}


赤字の部分を足すだけで画像がアップされます。

しかし、これだけでは、ティックデーターが送られてくる度にサーパーにアップしてしまう為、サーバーに負担を掛けてしまいます。
さらに、画像だけをアップしているため、画像のURLを直接入力しなくてはいけません。
今回は1枚だけですのでそれでも対応できますが、後の便利性を考えて、ホームページ用のHTMLファイルもアップしたいと思います。
が、その辺は次回説明します。


コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://fxsk.blog105.fc2.com/tb.php/130-f5cfb2c6
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。