Are you ready for TECH INFO?
さて、最近手がけていたシステムもほぼ完了し、手が掛からなくなってきました。
で、新しいことがしたいなと思っています。
そこで、最近普及著しいMT4とMQLについて、調査と勉強を始めようかと思っています。
全くの白紙からのスタートなので、なかなか理解に時間がかかるような気がしますが、
特にどこからかの依頼というわけでもないので、気おらずやります。
これで、お金がザクザク増えるようなシステムが出来てくれば楽しいのですが、さすがにそんなに甘くはないでしょう。
さらっと入門書を読んだところでは、MQLはCに近いとの事なので、
Cか…ポインタとか無いよね?C#に近い?
それだとありがたい。直近はC#でコンソールアプリという、世間ではあまりやっている人がいないようなシステムを手がけていました。
ちょっとビビリながら読み進めている所です。
がんばります。
なんらかのソフトウェアをコーディングする場合、外部のライブラリを使うのはほとんど必須になる。
そこにGPLなんかのソフトを使う場合は、ソース全体を公開しなければならないという決まりになっている。
GPLのライブラリを使ったソフトを作ったなら、そのソフト(2次著作物)のソースコードも公開しなければならない。
という事になっているらしい事は、私としてもなんとなく知っています。
おかげで、LINUXなどは、商用版(RedHat)の、ほとんど中身そのままの公開版(ロゴなどは変更されている)がフリーに公開されていて、世界中のサーバを実際動かしているという事実もあったりして。
しかし、正直言って難しい。よくわからない。
Wikiを見ても、さっぱりだ。
法律は難しい。プログラミングよりよほど複雑に思える。
さて、LGPLだが、
まぁ、ソースは公開せよという事のようだ。DLLへのリンクは動的に思えるが、C#でVSを使ったリンクだと、静的リンクと言えなくも無いような気がするし。
別にソースコードを公開する事に抵抗がある訳じゃないけど….いや、抵抗あるな。
「汚いコードやな」と思われたらショックで寝込むかもしれない…
なかなかに法律は難しい。
法律にうるさい米国が発祥だけに、よけいにややこしい。
もうちょっと、なんとかならないもんなのだろうか。
以前、Access で USBカメラを。的な話題を書きました。
http://www.matsumasa.com/blogs/codetech/archives/365
実際に以前の記事を参考にプログラムを動かすと、微妙に不具合がでます。
Access2013の場合だと、動いたり、動かなかったり。
規則性がありそうなのだけど、APIを使っているので根本的解決というのが難しい。
で、あれの解決を独自にやってしまいました、C#で…が、しかし…
うーん。ちゃんと動くし、カメラキャプチャも保存もDB登録も、いやぁ、我ながらなかなかの出来なのですが…
ちょっと、これを一般向けに提供は難しい。めんどくさい。
反則的というか、C#とAForge.NETで作ったツールをVBAで呼び出すのですが…これのライセンスどうなんだろう?…めんどくさい。
アメリカあたりのアレはすぐに訴訟沙汰になるからなぁ。面倒に巻き込まれるのはゴメンです。
申し訳ないけど、AForge.NETでUSBカメラから画像キャプチャは本当に簡単に出来てしまうので、各自でがんばって下さい。
多分、半日もあれば実用的なのが出来ます。
私は、ちゃんと仕事しながら、その日のうちにできました。
仕事って、プログラミングではないですよ。本業の方です。
では、がんばって下さい。
追伸
さて、AForge.net についてはLGPLというライセンスを適用されているらしく、
そのライセンスについての制限や、リンクや再配布について読んでみたが…
正直よくわからない。
ソースファイルの公開は必要ないみたいだが、リバースエンジニアリングを妨げてはならないとかなんとか。
うーん、うーん。
よくわからない。
も、ええか。めんどくさいからやっぱりやめとこ。
シリアルというと、RS-232C というやつです。
まだ生き残ってますね。果ては、USB-シリアル 変換ツールというのも日常的にあったりして、まだまだ廃れないようです。
USBのインターフェース仕様がブラックボックスになっていうのが一因だとか言われている。
いや、詳しくないのでよくわからないまま適当なこと書いてます。
さて、VBAからシリアルをさわること、よくあるよね。うんよくある、よくあ…ねぇよ!
まぁ、そういうレアなケースに巻き込まれたと思ってください。
救いの女神登場。名前は EasyComm
フリーのツールですばらしいツールだが、既にツールの提供及びサポートは終了しています。
http://www.activecell.jp/
俺、ここの文章よんで涙がでそうになったよ。作者の人、苦労したんだろうなぁ。
EasyComm 自体は探せば見つかりますし、マニュアルを読む限りでは、使用に制限はないもよう。
この執筆時点での最新バージョンは 1.84 です。
感謝して使わせて貰いましょう。
使い方、ソースなどはここを参考にしました。
http://bluefish.orz.hm/sdoc/vba_memo.html
もう、本当にありがたい。
おかげで課題が一つ、解決しました。
えー、C#と、英語しか情報がない AForge.NET (なんと読むのだ?アフォゲ ドット ネット?)というのを使って、画像キャプチャに挑戦してみた。
結論。超かんたん。
しかし、使いこなすには英語のドキュメントを読めるのが条件になりそう。
ちょっと凝った事をしようとすると、ちょっとしんどい。
とりあえず、USBカメラを使って得た映像からスナップショットを取ってbmpにして保存するのは、どこにでも転がっているサンプルだけで間に合う。
C#ならば、jpgに変換して保存というのも超かんたんだった。笑っちまうほど。
特定のUSBカメラを指定したり、サイズを指定したり、そういうのにはひとひねり必要なようです。
モニカー(Moniker)って、調べてもロクに出てきませんな。
この複雑怪奇な処理をC++とかでやっている人の事を、とても尊敬するなぁ。
MSの技術情報は、なぜか大抵あてにならない。そう思っているのは俺だけなんだろうか???
| 月 | 火 | 水 | 木 | 金 | 土 | 日 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 | ||||