< | >

(TEST)
  • (2012-05-05 16:02:14)
TESTTESTTEST




< | >

徹底自動化が可能なメールソフト「秀丸メール」
  • (2012-05-05 13:27:22)
メールのクライアントソフトはいろいろ。その中で「秀丸メール」は特に凄い。マクロが。(2012/05/05 小平探検隊)

秀丸メールマクロは最初わかりにくい



秀丸マクロに多少慣れていても、秀丸メールのマクロはすぐには書けない。

同じようなマクロだろうとはじめてみると自分の場合「全然わからない!」症候群にいきなり陥った。数日もがいて、何となく意図されている考え方が見えてきた。

秀丸メールの発想・・・プレインテキスト1本槍



秀丸メールの特徴はマクロ。作者もこの部分を意図して開発していると思う。秀丸マクロがかなりそのまま踏襲されている。

この秀丸マクロを生かすために、秀丸メールではメールのヘッダもタイトルも本文も、なるべくプレインテキスト1本槍で生成されるように制作されているのではなかろうか。

こんなメールソフトは他にない。プレインテキストに対して秀丸マクロは強力だ。結果的に他のメールソフトでは実現できない多彩な自動化が可能となる。

そういう自動化を特に必要としない人にはまるでどうでもよい話だが、自動化が必要な人には秀丸メールはマジック。

秀丸マクロと秀丸メールマクロの違い



秀丸マクロと秀丸メールマクロは別物と考えた方がよい。秀丸メールマクロは基本的に「TKInfo.dll」というプログラムから操作する。

TKInfo.dllはメールソフトの操作を実行するプログラムの集合体。AccessとDAOの関係に近いかもしれない。よって、秀丸メールマクロはまずはおまじないとして下記の記述から始まることが多い:

loaddll "TKInfo.dll";

2段構えの構成



メールソフトの多くの操作がTKinfo.dllでカバーされている。不足分は提供されている関数を組み合わせる。

結果的に手作業でできる操作はほぼすべてプログラムから操作可能となる。キーボードエミュレータを使うより確実で速く美しい。

一方、各メールの本文やタイトルやヘッダなどのテキスト操作は秀丸マクロがほとんどそのまま使用可能である。

よって、秀丸メールマクロは下記2段構えのマクロで構成されていると理解するとわかりやすい:

・メールソフトの操作 → 秀丸メールマクロ

・メール本文(テキスト)の操作 → 秀丸マクロ

秀丸メールマクロの書き方



関数の呼び出し方はたとえば、下記のように書く:

#n = dllfunc("FindDown");

$folder = dllfuncstr("CurrentFolder");

特徴は

・(戻り値が数値の場合) → dllfunc() という形式で関数を呼び出す

・(戻り値が文字列の場合) → dllfuncstr() という形式で関数を呼び出す

・戻り値を必ず「数値変数(#)」か「文字列変数($)」に代入する形式になっている模様

このへんは理由は私にはわからないが、とにかくこうなっている。そういうルールとして秀丸マクロは書く(ようだ)。

定型処理が必要なメールは・・・



とにかく、業務関連の定型的なメールを対象としていて、クズな仕事から解放されたいヤツは即刻、秀丸メールに乗り換えるべきだ。マクロが動いた瞬間は人生が楽しく感じられる。






< | >

FTPソフト対決と言っている間のFTPソフト
  • (2012-05-04 04:58:02)
FTPは昔からFFFTP一筋だった。いつの日からかFileZillaがメインとなったが、WinSCPもNextFTPも捨てがたい。

微妙に違う使い勝手



世界的にはFileZillaが一番使用されているかもしれないが、自分にはどうもファイルのオーバーライト指定方法に関する使い勝手が納得いかない。

使い勝手なら圧倒的にFFFTPだが、大量送信の際、不安定になるケースがあるようでFFFTP一本ということもしていない。

オンラインのままリモートファイル書換可能なWinSCP



リモートファイルをオンラインのまま編集可能なWinSCPはひそかに使用頻度が増えている。

納得がいかない度に他のFTPソフトを試しているので、メジャーなFTPソフトは一通りインストールされている。

サービスに合わせて全FTPソフトを使用



統一性がないが、結局、そうなってしまいそう。サービスごとにFTPソフトが固定しているものもある。PCの中は混乱気味。






< | >

ブラウザ対決と言っている間に全プラウザ使用
  • (2012-05-04 04:37:38)
IE・FireFox・Chrome・Opera・Safari・・・どれを自分用のブラウザにしようかと、数年前、比較検討したことがある。現在、全部使用している。差はほとんど感じない(2012/05/04 小平探検隊)

製品間の優劣はなくなる


起動が速くて軽いヤツ?なんか魅力的に感じた。

結局、普通に使用する分、差はない。

現在ではどれが優れているなどは考えなくなった。

サービスごとに使い分けるブラウザ


IEはCOM経由のオブジェクトが提供されているので、特別な事情で使う理由がある。

しかし、その他のブラウザはSNSごとにアクセスするブラウザが自然と固定されてきて結局、全部のブラウザを使う毎日。

・デフォルトはIE
・WorePressとFacebookはFireFox
・Google+はChrome

といった感じ。






< | >

COM経由でインスタンス生成という話
  • (2012-04-29 06:46:34)
UWSCからExcelを操作できる。その場合、UWSCのコードとして最初に下記を書き込む:

Excel = CreateOleObj("Excel.Application")

すでにExcelが開かれている場合なら

Excel = GetActiveOleObj("Excel.Application")

オマジナイとして書く


「そういうもの」として、オマジナイ的に書いている。

はたとこの意味は?と今日考えてみた。

ネットで引くとこの部分を「COM経由でインスタンス生成」と表現している人がいる。

Microsoft社の構想


COMとはMicrosoft社が開発したプログラム間通信環境のようだ。

今までOfficeの各アプリケーションは共通開発基盤のVBAがあるため「地下茎でつながっている」という印象を受けてきたが、VBAだけでなく、COMが実装されているからかもしれない。

たとえば、ExcelとAccessの間ではプログラムで相手アプリケーションを操作することもできる。はじめて知ったときMicrosoft社の構想は大きいと感動した。

たとえば、弥生会計からExcelがプログラムで操作できれば便利だな、なんてよく考えるが、弥生会計にそういう発想はないようだ。

弥生会計に限らず多くの独立系のアプリケーションソフトが単体使用を想定している。技術的な問題ではなく、政治的な問題だろうが、物足りない。

Microsoft社以外にも公開されているCOM


COMが提供する「地下茎でつながる」仕組みを利用すれば、Microsoft社以外のアプリケーションもExcelを外部から利用することができる。

UWSCでは下記構文を入れればExcelが利用できる。

Excel = CreateOleObj("Excel.Application")

オブジェクトをロードしてインスタンス生成


この構文の意味はCOMによって提供されているExcelオブジェクトをPCのメモリーにロードして、UWSCから使える状態にします → インスタンスの生成

と解釈した。

インスタンスとは事例という意味なので、この場合、いろいろ使えるオブジェクトを具体的にUWSCで使える状態にしました、くらいの意味か。

この推理が正しいなら、("Excel.Application")はExcelオブジェクト(プログラム体)を意味するが、この場合、パスは指定しなくてもいいのだろうか?とか、オブジェクトはファイル名とは違うのか、などまだいろいろ疑問は残っている。

奥は深そうなので、深みにはまる前にこれくらいで。






search
layout
admin

[▲page top]