Karafuto Blog
スポンサーサイト
- -------- (--)
- スポンサー広告
- Comments (Close): -
- TrackBack (Close): -
AutoHotkeyでドライブ文字を取得する
- 2009-06-19 (Fri)
- autohotkey
AutoHotkeyのコマンドでドライブ文字を取得
AutoHotkeyの DriveGetコマンドの Listオプションでドライブ文字の一覧を取得する。
DriveGet, drives, List list := RegExReplace(drives, "\w", "$0,", count, -1) StringLen, length, list StringLeft, list, list, % length - 1 MsgBox, %list% ; C,D,E
レジストリからドライブ文字を取得
AutoHotkeyの Loop (registry)コマンドでレジストリの「HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices」キーから「\DosDevices\(アルファベット):」という値を探して、ドライブ文字を取り出す。これだと、過去に使用したドライブ文字が残るようだ。
Loop, HKEY_LOCAL_MACHINE, SYSTEM\MountedDevices
{
IfInString, A_LoopRegName, \DosDevices\
{
StringMid, drive, A_LoopRegName, 13, 1
If (! list) {
list = %drive%
} else {
list .= "`,"drive
}
}
}
Sort, list, CL D,
MsgBox, %list%
; A,C,D,E,F,G
Win32 APIでドライブ文字を取得
Win32 APIの GetLogicalDriveStrings 関数でドライブレターを取得するが、AutoHotkeyでは Null文字の後の値が取れないようなので、NumGet()関数で変数のメモリから数値を取り出し、文字に変換してみた。一応取れているけど、こんなやり方でいいんだろうか。
GetLogicalDriveStrings() {
nBufferLength = 108
VarSetCapacity(lpBuffer, nBufferLength)
length := DllCall("GetLogicalDriveStringsA", UInt, nBufferLength, Str, lpBuffer)
Loop, %length%
{
If (A_Index = length) {
break
}
chr := NumGet(lpBuffer, A_Index - 1, "UChar")
chr := chr = 0 ? "`," : Chr(chr)
str .= chr
}
return str
}
list := GetLogicalDriveStrings()
StringReplace, list, list, :\, , All
MsgBox, %list%
; C,D,E
AutoHotkeyでディスクの容量を取得する
- 2009-06-15 (Mon)
- autohotkey
AutoHotkeyのコマンドでディスクの容量を取得
AutoHotkeyの DriveGetコマンドの Capacityオプションでディスクの容量を取得して、DriveSpaceFreeコマンドでディスクの空き容量を取得する。
SetFormat, float, 0.2
; ドライブレターを設定
directoryName = C:\
DriveGet, diskSpace, capacity, %directoryName%
if (ErrorLevel = 0) {
diskSpace := diskSpace / 1024
DriveSpaceFree, freeSpace, %directoryName%
freeSpace := freeSpace / 1024
text = ディスクの容量`t%diskSpace%GB`nディスクの空き容量`t%freeSpace%GB
} else {
text = ディスクの容量を取得できませんでした
}
MsgBox, , %directoryName%, %text%
; ディスクの容量 37.27GB
; ディスクの空き容量 25.98GB
Win32 APIでディスクの容量を取得
AutoHotkeyの DllCall()関数で Win32 APIの GetDiskFreeSpaceEx 関数を呼び出して、ディスクの容量、空き容量を取得する。
SetFormat, float, 0.2
GetDiskFreeSpaceEx(lpDirectoryName) {
VarSetCapacity(lpTotalNumberOfBytes, 8)
VarSetCapacity(lpTotalNumberOfFreeBytes, 8)
result := DllCall("GetDiskFreeSpaceExA", Str, lpDirectoryName, UInt, 0, Uint, &lpTotalNumberOfBytes, UInt, &lpTotalNumberOfFreeBytes)
If (result) {
size = % Numget(lpTotalNumberOfBytes, 0, "Int64") / (1024 * 1024 * 1024) "," Numget(lpTotalNumberOfFreeBytes, 0, "Int64") / (1024 * 1024 * 1024)
} else {
size = 0
}
return size
}
;ドライブレターを設定
directoryName = C:\
diskSpace := GetDiskFreeSpaceEx(directoryName)
If (diskSpace) {
StringSplit, diskSpaceList, diskSpace, `,
text = ディスクの容量`t%diskSpaceList1%GB`nディスクの空き容量`t%diskSpaceList2%GB
} else {
text = ディスクの容量を取得できませんでした
}
MsgBox, , %directoryName%, %text%
; ディスクの容量 37.27GB
; ディスクの空き容量 25.98GB
AutoHotkeyの DriveGetコマンドと DriveSpaceFreeコマンドは容量をメガバイト単位で取得する(下位を切り捨て)ため、2つのスクリプトでは結果が異なることがある。
参考にしたページ
Internet Explorer 8をインストールした
- 2009-06-10 (Wed)
- software
Windows Updateを手動で実行したところ、Internet Explorer 8が優先度の高い更新プログラムに出てきたから、インストールしてみた。Internet Explorer 8を使って、気になったところをメモ。
アクセラレータ
ページのテキストを選択して、検索などの Webサービスを利用する。プレビューが可能なアクセラレータはページ上に結果を表示する。ページを移動せずに結果を表示することはJavaScriptでも作れないことはないけど、アクセラレータが用意されていれば簡単にサービスの種類が増やせる。
アクセラレータの説明では、ページのテキストを選択すると現れる青い矢印のボタンをクリックして、メニューにマウスカーソルを合わせると、検索などの結果がページ上に表示されると書いてあるが、普通に右クリックメニューからも利用できる。というか、右クリックのほうが早いと思うけど。
Webスライス
お気に入りバーからページの一部の更新情報を表示することができる。RSSじゃあダメなのかなあ?自分でページを切り取れるのならまだしも、サイトで用意されてないと使えないのがな。
Webスライスを表示している時、表示からマウスカーソルを外すと、重くなる(?)。
タブのグループ化
タブをグループ化して、色で分ける。同じページから開かれたページは同じグループになり、タブを別のグループに移動させるとそのグループに変わるようだ。タブグループをまとめて閉じることもできる。
タブごとにグループに分けられているので、タブに前のページと全く関係ないページを開いてもそのまま同じグループのままになる。それと、これはタブグループの問題ではないが、タブがたくさんあっても色で見分けやすいのに、あまり多くタブを開くとタブが隠れてしまう。
開発者ツール
HTML、CSS、JavaScriptを調べて、いじれる。ブラウザに開発者ツールが付いてくるのが普通になったな。
あとメニューに、スクリプトや CSSの無効化、要素の情報の表示、要素のアウトライン表示、画像の情報の取得、キャッシュと Cookieの消去や更新、ツール、HTMLや CSSなどの検証、互換性モードのテストなどがある。その中でツールメニューのルーラーとカラーピッカーがちょっと面白いと思った。
ルーラーは水平、垂直だけでなく、斜めにも置ける。拡大鏡も付いている。
カラーピッカーは色を取得するだけ。
Internet Explorer 8 新機能紹介ムービー
Internet Explorer 8 新機能紹介ムービー の主人公、地球調査員タラバハチローがもうちょっと見たくなった。
参考にしたページ
- Windows Internet Explorer 8: ホーム ページ
- Internet Explorer 8 開発者向け技術概要
- 2008/9/30 - Internet Explorer 8 のタブのグループ化
- Internet Explorer 8 の開発者ツールの概要
- 【レビュー】Internet Explorer 8を試す - 導入のポイントから機能紹介、速度評価まで | パソコン | マイコミジャーナル
- Internet Explorer 8(前編) − @IT
- IE 8で気に入っている点と気に入っていない点、合わせて10個 - IT業界を生き抜く秘密10箇条 - ZDNet Japan
Dropboxを試してみた
- 2009-06-01 (Mon)
- web
Dropboxはオンラインストレージサービス。クライアントソフトを使って、複数の PCでファイルを共有させることができる。
- 無料で 2GB、有料で 50GB
- Windows、Mac OS、Linuxで使える
- アクセスの許可は、自分だけ、他のユーザと共有(Share)、公開(Public、Photos)がある
- 1ファイルのサイズの制限は無い(サイトからアップロードする時は 1ファイル 350MBまで)
- ファイルの履歴(Revisions)が残る
クライアントソフトをダウンロードして、インストールする。インストールが終わると、Dropbox Setupのウィンドウが表示されるので、「I'm new to Drobox」を選び、アカウントを作成する。アカウントを作成した後、「I want to choose whrer to puto my Dropbox」にチェックを入れれば My Dropboxフォルダ(同期するフォルダ)の場所を選べる(後から Dropboxのタスクトレイアイコンの preferencesから My Dropboxフォルダの場所を変更することもできる)。あとは、作成された My Dropboxフォルダにファイルをコピーすれば、ファイルが自動的に同期される。
ブラウザから Dropboxのサイトでファイルをアップロード、ダウンロード、コピー、移動、リーネーム、削除などを行うこともできる。当然、サイトにアップロードすれば My Dropboxフォルダにファイルはコピーされ、サイトで削除すれば My Dropboxフォルダからファイルが削除される(削除したファイルも Show deleted filesで表示させて Undeleteで戻すことができる)。
参考にしたページ
Amazonの URL
- 2009-05-27 (Wed)
- web
Amazonの URLは種類が多いから、自分が使いそうなものだけをメモした。
Amazonの商品の URL
- 短い URL
- http://www.amazon.co.jp/dp/(ASINコード)/
(例)http://www.amazon.co.jp/dp/B00000BKI1/
アソシエイトIDをつけた URL
- よく見かける URL
- http://www.amazon.co.jp/exec/obidos/ASIN/(ASINコード)/(アソシエイトID)/ref=nosim/
(例)http://www.amazon.co.jp/exec/obidos/ASIN/B00013EV1A/karafuto50-22/ref=nosim/
- Amazonで作成した URL
- http://www.amazon.co.jp/dp/(ASINコード)?tag=(アソシエイトID)&camp=XXXX&creative=XXXX&linkCode=(リンクタイプ?)&creativeASIN=(ASINコード)&adid=XXXXXXXXXXXXXXXXXXXX&
(例)http://www.amazon.co.jp/dp/B00013EV1A?tag=karafuto50-22&camp=1027&creative=7407&linkCode=as4&creativeASIN=B00013EV1A&adid=09RMHWVE7HEJE016NEZH&
リンクの動作確認ツール(Amazon アソシエイト・プログラムにログインする必要がある。)で試してみるとどちらでもいいようだ。
Amazonの商品画像の URL
http://images.amazon.com/images/P/(ASINコード).(国別コード).(画像の形式).jpg
日本の国別コードは 09、アメリカとカナダは 01。(?)
画像の形式はいろいろ指定できる(傾き、影、割引率、その他)が、ここでは画像のサイズだけ。省略するとMZZZZZZZの指定になる。小さい方から、THUMBZZZ、TZZZZZZZ、MZZZZZZZ、LZZZZZZZ。
![]()

左から THUMBZZZ、TZZZZZZZ、MZZZZZZZ(http://images.amazon.com/images/P/B001OIZAL6.09.THUMBZZZ.jpg、http://images.amazon.com/images/P/B001OIZAL6.09.TZZZZZZZ.jpg、http://images.amazon.com/images/P/B001OIZAL6.09.MZZZZZZZ.jpg)。
複数の画像がある時
http://images.amazon.com/images/P/(ASINコード).(国別コード).(追加コード).(画像の形式).jpg
追加コードに番号を入れる。省略すると 'MAIN'を指定したことになる。(追加コードにはアングルの指定もある。)
- 書籍の場合は IN + 数字。(IN01, IN02, IN03, IN04, IN05...)
- 書籍以外は PT + 数字。(PT01, PT02, PT03, PT04, PT05...)



左から MAIN、PT01、PT02、PT03(http://images.amazon.com/images/P/B0016AN68G.09.MAIN.MZZZZZZZ.jpg、http://images.amazon.com/images/P/B0016AN68G.09.PT01.MZZZZZZZ.jpg、http://images.amazon.com/images/P/B0016AN68G.09.PT02.MZZZZZZZ.jpg、http://images.amazon.com/images/P/B0016AN68G.09.PT03.MZZZZZZZ.jpg)。
複数の画像(その他のイメージ)がある音楽、本は少ないから、使わないかな。
参考にしたページ
- おまかせリンク(R)
- 全記事表示リンク
- Search
- Meta
- Feeds



