AutoHotKeyを使ってDrag&Dropで手軽にbase64エンコード

ちょっとした画像とかをbase64エンコードしたいと思った時はThe data: URI kitchenにアクセスしていたんだが、いちいちアクセスすんのがめどい。

そこで目を付けたのが、ITproに載ってたVBとPHPを使うやつ。

バイナリ・ファイルのテキスト化

確かにファイル渡すだけでエンコードしてくれるのはいいが、vbスクリプト、phpスクリプト、出力用のテキスト、さらに手作業でコピーという無駄が発生するのが非常にヤな感じ。

理想としては、渡したら即座にMIME付けてクリップボードだよなー

ってゆーかどっかにねーかなー

さがすのめんどくせー

「私自らが作る!!」

というわけで作ってみた。

dandd64.zip

zipを適当なフォルダに解凍。中から出てきたdandd64.exeにファイルをドラッグアンドドロップで渡せば即座にエンコードしてクリップボードに入れてくれる。非常に楽。

AutoHotKeyで作っているが、コンパイルしているのでAutoHotKeyをインストールしていない環境でも問題無く使用できる。

MIMEはwebで使うような標準的なものしか入っていないので、物足りないと思ったら自分で追加していくといいだろう。

一応ソースも入れている。動作が気に入らない人や、他人がコンパイルしたものなぞ危なくて使えないという人は、こっちからコンパイルして欲しい。

余談

コマンドライン引数を動的に取得する方法がわからなかったので

args = %1%|%2%|%3%|%4%|%5%|%6%|%7%|%8%|%9%|%10%|%11%|%12%|%13%|%14%|%15%|%16%

こんな感じで力技で取得してるんだが、誰か動的に取得する方法を教えてくれ。

追記

コマンドライン引数を動的に取得する方法をコメントにて教えて頂いた。どうもありがとうございます。

Loop %0%
{
    path := %A_Index%
    MsgBox, %path%
}

ってか、その後ヘルプ読んだら思いっきり載ってた。そしてこの諦念・・・

余談2

私自らが作るといいつつ、エンコード部分だけ丸投げしてるのはナイショだ。(途中まで作ってたらバイナリからエンコードできるのを見つけてしまって、そっちに鞍替えした。その方が処理早いし。)