2011年1月5日水曜日

バッチファイル(.BAT)のリダイレクトエラー補足方法

以下の処理は、hoge.exe の実行エラーを補足できるが、mylog.txt へのリダイレクトのエラーは補足できない。

hoge.exe /t > c:\mylog.txt

IF %ERRORLEVEL%==1 GOTO ERROR

リダイレクトのエラーを補足したい場合、cmd.exe をかませば良い

cmd /C "hoge.exe /t > c:\mylog.txt"

IF %ERRORLEVEL%==1 GOTO ERROR

2010年10月3日日曜日

日本Androidの会、10月定例会 に行ってきた

先日開催された、日本Androidの会10月定例会に参加してきたので、その内容を簡単に記す。

イベント概要

講演内容

音声入力 API for Android

講演者:Alex Gruenstein
通訳:Yusuke Konishi
  1. Google 音声入力について
    • 音声検索は主要なデバイス、言語に対応している
    • Web 検索だけでなく、天気、乗り換え案内、など利用シーンは色々
    • 検索ボックスからだけでなく、全ての入力欄に、キーボードの代わりとして使うことができる
  2. Google 音声入力の仕組み
    • 入力した音声情報をそのままサーバに送ると、入力候補が返ってくる
    • サーバが音声情報を受け取って文章にするまで、3段階の処理を行う
      1. Acoustic Model
        • 受け取った音声を1音ごとに分解
        • それぞれの音が何であるか、可能性のある音の候補をいくつか作る
      2. Dictionary
        • Acoustic Model で作られた音の候補から、並べて単語として成り立つ組み合わせを、単語の候補とする
      3. Langage Model ( Search Langage Model と Dictation Langage Model を利用シーンにより使い分ける )
        1. Search Langage Model
          • Dictionary で作られた単語の候補から、並べて検索ワードとしてそれらしくなるものを作る
          • この判定には Google 検索のログを使っている
          • 検索向きの Langage Model
        2. Dictation Langage Model
          • 辞書的な判定から文章にする
          • メール、チャットなど、文章向きの Langage Model
    • またこれらのエンジンは言語ごとに作られており、サーバはまずはじめに言語ごとエンジンに振り分けることになる
  3. Google 音声入力の組み込み方法
    • 音声情報をサーバに投げると、いくつかの候補が返ってくるというだけなので簡単
    • 使用する Langage Model はパラメータで指定
  4. Google 動物音声検索
  5. デモンストレーション
    • AAで表現される犬に声をかけると、芸をするアプリ。「おて」「おすわり」など。「ハウス」でアプリ終了
感想
  • 実際に音声検索を使っていてもその認識精度には驚かされるが、仕組みを知ることでさらに秀逸さを思い知らされた感じ
  • 音声入力は、音声認識であり、音声検索ではないということが重要
  • 応用次第で検索とは全く違う方向性のアプリを作れる ( 例、英語の発音をチェックするアプリ )
はじめての App Inventor
講演者:梶川敬文
  • 誰でも(プログラムを知らなくても)出来る!と言われているが BASIC レベルの知識は必要
  • Betaなので、全体的にまだ未完成の部分がある
  • クラウドサービスなので常に最新版を利用できるが、逆に勝手にアップデートされるので、昨日まで動いていたものが急に動かなくなることがある(まだBetaだからとう面もある)
  • プロトタイプ作成などに使えると思う
感想
  • はじめての App Inventor という題名だったので、App Inventor の Hello World かと思ってた、App Inventor を使ってみてのレビューという感じだった
  • プログラムの論理構造をパズルっぽいブロックで組み合わせる表現方法は、今後の新しい開発環境でも用意されれば、言語ごとの表記方法の相違を飲み込んでくれるので、とっかかりの面倒臭さがなくなるかも ( 今で言えば Google Apps, Google Desktop, etc )
  • 開発の敷居を下げることで Android 開発者の層が広がり、将来的に優秀な技術者を獲得することにつながる可能性も
モバイルARプラットフォームについて
講演者:渡辺潤
  • AR(拡張現実) 技術の紹介
    • AR(拡張現実)とは、セカイカメラとかそういうやつ
    • GPS Based AR : GPS による位置情報からの制御
    • Vision Based AR : 映像からの制御
  • 合成処理の流れ
    1. カメラ画像の取得とマーカー検出
    2. 登録済マーカーとの比較
    3. マーカーの3次元位置計測
    4. カメラ画像へのCG合成
  • 上記サイクルを、Snapdragon では毎秒30サイクル以上処理可能
  • 画像、3Dの物体もマーカとして認識可能
  • 現在可能な利用シーン
    • 取り扱い説明
    • 広告
    • ゲーム
    • 検索
  • 現在不可能(今後の課題)な利用シーン
    • SNS
    • ナビゲーション
  • AR ディベロッパーチャレンジを開催する
  • 10月、SDKリリースと同時に開始、来年2月までアプリ受付
  • 賞金は、1st : $125,000 2nd : $50,000 3rd : $25,000
  • 宝くじより確率高いのでよろしくお願いします(笑

感想

  • Qualcomm が Snapdragon の開発元だとは知らなかった
  • 予備知識が少なかったからか、突拍子も無い印象を受けた
  • プレゼンに関して、はじめに何をプレゼンするのか、相手には何を分かって欲しいのか、を説明するといいと感じた
andronaviでのアプリ配信サービス展開計画のご紹介
講演者:徳間康晋
  • なぜ BIGLOBE が?と思うだろうが、これは BIGLOBE の新しい分野への挑戦
  • 分散しているマーケットを統合し、Androiv アプリといったら Andronavi だという役割を目指す
  • 運営側が登録している全てのアプリを実際に使い、レビューを書く
  • 個人の開発者でも利用可能。無料、有料問わず
  • 不正利用防止対策をしている (起動時にサーバへ利用可能チェックをかける)
    i アプリにあるものと同じイメージだと思われる
  • 料金システムは、PayPal、BIGLOBE ID支払い
  • Andronavi をどうぞよろしく
感想
  • サイトの運営側がレビューを書くというのは今どき珍しい
  • マーケットというより、アプリ紹介サイトになってしまうのではないか
  • 開発者自身がプレゼン、ユーザがレビューというのがあるべき姿だと思う
  • 力を入れ具合は感じたので、今後の展開に期待
  • この講演だけの話ではないが、Android 市場の成長予測に Windows Phone 7 を無視しているのが如何なものだろうか

2010年9月25日土曜日

AutoHotkey Script - Outlook の表示/非表示、一発切替キー

以下のコードは、「Windows キー(ミ田)」 + 「1」で、Outlook の表示非表示を切り替えるもの。
1発起動なので、マウス操作、Alt + Tab の切り替えよりも、さらに素早くメールチェックができる。

Outlook の表示/非表示切替コード

SetTitleMatchMode 2

#1::
IfWinExist, Microsoft Outlook
{
IfWinActive, Microsoft Outlook
{
WinMinimize
}
else
{
WinMaximize
WinActivate
}
}
else
{
Run outlook
}
return



ポイント

Outlook を「最小化時にアイコン化する」の設定にしていると、IfWInExist で発見できなくなるので困るのだが、Outlook の2重起動防止機能を利用して、アイコン化時には表示、未起動時には起動、という動作をさせている。検索文字列と Run を変えれば Thunderbird でも、なんでも可能。

2010年9月19日日曜日

AutoHotkey キーコード一覧

複合キー一覧

Shft + Alt + a、Ctrl + Alt + d など、代表的な同時押しに使うキーは、略記号で簡単に定義できる。
これら同士を複数組み合わせることも可能。また、同時押しの定義なので、順番は関係ない。
これで全てではないが、実際に使うのはこのぐらい。
キー
記述
備考
Shift +
Control ^
Alt !
Windows (ミ田) #

キー一覧

通常のキーを指定するときは、以下のキー名を指定する。
キー
記述
備考
a~z a~z (そのまま) 大文字/小文字どちらでも OK
0~9 0~9 (そのまま)
F1~F12 F1~F12 (そのまま)
Enter Enter Return でも OK
Esc Esc Escape でも OK
Tab Tab
CapsLock CapsLock
Shift Shift 左右両対応。
Control Ctrl Control でも OK。左右両対応。
Alt Alt 左右両対応。
Space Space
左 Control LCtrl LControl でも OK。Windows 2000 以降対象
右 Control RCtrl RControl でも OK。Windows 2000 以降対象
左 Shift LShift Windows 2000 以降対象
右 Shift RShift Windows 2000 以降対象
左 Alt LAlt Windows 2000 以降対象
右 Alt RAlt Windows 2000 以降対象
左Windowsキー(ミ田) LWin 通常の日本語キーボードだと左側しかない
右Windowsキー(ミ田) RWin 英語キーボードだとついてたりする
アプリケーションキー AppsKey 通常は右 Alt と右 Ctrl の間にある、右クリックメニューを出すキー。
Insert Ins Insert でも OK
Delete Del Delete でも OK
Home Home
End End
PageUp PgUp
PageDown PgDn
上矢印 (↑) Up
下矢印 (↓) Down
左矢印 (←) Left
右矢印 (→) Right
PrintScreen PrintScreen
ScrollLock ScrollLock
Pause Pause
Break Break
NumLock NumLock
Sleep Sleep 一部キーボードでは動作しない

テンキー一覧

テンキーを指定する場合は NumLock によって別のキーとして定義されている。
よって NumLock が ON の時と、 OFF の時で別々に指定する。
この機能を利用すると、テンキーは単独で27通りの動作を割り当てることができる。
テンキー
NumLock ON 時
NumLock OFF 時
備考
0 Numpad0 NumpadIns
1 Numpad1 NumpadEnd
2 Numpad2 NumpadDown
3 Numpad3 NumpadPgDn
4 Numpad4 NumpadLeft
5 Numpad5 NumpadClear
6 Numpad6 NumpadRight
7 Numpad7 NumpadHome
8 Numpad8 NumpadUp
9 Numpad9 NumpadPgUp
. NumpadDot NumpadDel NumpadDot は (.) でも OK
/ NumpadDiv NumpadDiv ON / OFF 同じ。(/) でも OK
* NumpadMult NumpadMult ON / OFF 同じ。(*) でも OK
- NumpadAdd NumpadAdd ON / OFF 同じ。(+) でも OK
+ NumpadSub NumpadSub ON / OFF 同じ。(-) でも OK
Enter NumpadEnter NumpadEnter ON / OFF 同じ。

マルチメディアキーボード用キー一覧

ボリューム操作、再生停止、アプリ起動など、独自のキーが付いているキーボード用のキー。
キー
記述
備考
ブラウザ-戻る Browser_Back
ブラウザ-進む Browser_Forward
ブラウザ-更新 Browser_Refresh
ブラウザ-停止 Browser_Stop
ブラウザ-検索 Browser_Search
ブラウザ-お気に入り Browser_Favorites
ブラウザ-ホーム Browser_Home
ボリューム-アップ Volume_Up
ボリューム-ダウン Volume_Down
ボリューム-ミュート Volume_Mute
プレイヤー-次へ Media_Next
プレイヤー-前へ Media_Prev
プレイヤー-停止 Media_Stop
プレイヤー-再生/一時停止 Media_Play_Pause
起動、メール Launch_Mail
起動、メディア Launch_Media 多分、メディアセンターのボタン。
起動、1 Launch_App1
起動、2 Launch_App2
液晶バックライト-暗く F21 ノートPC等、対応マシンのみ
液晶バックライト-明るく F22 ノートPC等、対応マシンのみ
<参考>
Alphabetical Command List for AutoHotkey (AutoHotkey公式サイト)
AutoHotkeyを流行らせるページ

2010年9月18日土曜日

MacBook Pro のキーボード換装(分解、交換)手順

きっかけ

うちの MacBook Pro MA464J/A  のキーボード z~m キーの反応が悪い。調査した結果、ケーブルの接触不良が疑わしいので接続を確認したかった。また、キーボード交換!となったときに自分で換装できるようになっておこう、ということで換装(と言っても同じキーボードをはめ直すが)してみることに。

MacBook Pro の換装は高ハードルと言うが…

ちなみに Mac に触れてから一月もたってないので、Mac の分解は初めて。そこで前情報として色々調べたのだけど、MacBook Pro の分解はハードルが高いという情報だった。

結果から言うと確かにハードルは高めであった。ただそのハードルが意味するところは、難易度というよりも面倒くささだと感じた。正しい情報を元に、人並みに慎重に部品を扱えば壊すこともない。ただ、外すネジの数が30本近くと非常に多い(笑)のと、換装に関する情報が少ないというところが多少ハードルを上げていると感じた。

取り外すまでの流れ

キーボードが乗った上部のパネルを外すところまでは、ASCII.jp にある HDD&ドライブ 換装手順 の6番までを参考にした。写真付きでネジの位置と本数まで書いてあるので非常に分かりやすい。

IMAGE_176
上記サイトの6番までやると、こういう状態になる。
ただ、一つ情報に違い(抜け?)があって、上部のパネルを外す際、ネジを外しても手前だけが固くくっついていて持ち上がらなかった。勇気を出して手前に起き上がらせたところ、バキバキッ!!という音とともに気持ちよく外れた笑。実は3箇所ほど、パチッと止める方式でクリップされていたのだ。外し方としては正解だったものの、心臓に悪い。

IMAGE_177
パネルを外したあとは、WORKS | MacBook Pro 17インチ キーボード交換 を参考に解体。ここからはネジ外し作業だけでなく、シールはがし、ケーブル外し(超小さい)、ツメの曲げ直しの作業をやるので、情報がないと辛いところ。

image IMAGE_186
まずはケーブルから。1本目。ここから2本だけ外すのだが、これはその一つ、バックライト用らしい。接続部の直径1cmぐらいしかないのに、外すときに茶色い部分を起きあがらせる仕様になっている。爪でひっかいたら茶色の端が欠けた(笑)ので、ケーブルを引っ張ったら勝手に茶色い部分が起きてくれた。シールは貼りなおせる。

image IMAGE_185
2本目は青いヤツ。これはキーボードと本体をつなぐケーブル。上記バックライト用のやつと同じノリで引っ張ったらなんなく抜けたけど、正しいやりかたなのか解らない(求ム情報)。ちなみにケーブルを引っ張る前に、透明のパネルを慎重に剥がす。これも貼りなおせた。

image 
ケーブルを2本はずしたら、ネジを外す。ただしネジは黒いシートで隠れているので、シートをペリペリ剥がしてからとりかかる。ちなみに、赤い部分全部キーボードをとめてるネジ。多すぎ!

image 
ネジをすべて外してもまだキーボードは取り外せない。最後に、周りを取り囲んでいる青い爪をすべて起こす。これはすべて起こさなくても取り外せるが、無理をするとキーボードやパネルに力が加わって、容易に変形してしまうので注意。ちなみに「爪を起こす」というのは「フック状になっている金属を、まっすぐに伸ばす」ということだ。

IMAGE_188 
以上をこなして、めでたく外れましたの図。このキーボード単体だと、丸めて運べるゴムのキーボードみたいにペラペラだ。これでキーボードを取り替えて、逆の手順を踏めば立派に換装できる。

触った部品

  1. ネジ:16本+10本=26本
  2. ケーブル:1本+2本=3本
  3. シール:黄色1+透明1+黒2=4枚
  4. 爪:たくさん

結果

そもそものキーボード不良について、再度組み立てなおしても症状は変わらなかった。ただ、キーボードと本体の接続部の接触によって、z~mだけでなく、asdf 周辺も効いたり効かなかったりという影響があり、asdf 周辺は効いて z~m が効かない状態で、タッチバッド上部を強く押すと効いたりした(笑)。ただ、それ以上どうすればいいのか解らなかった。

キーボードの換装については、本当に面倒くさかった。が、次はスムーズに1時間半くらいで終わらせられると思う。あと、爪対策にラジオペンチが必要だと思った。

以上。

<換装するにあたって参考にしたサイト>

<ついでに見つけた面白いサイト>

2010年9月17日金曜日

VB6 でまともにテキスト検索(Grep)するアドイン

VB6 に触れたことがある人ならわかるであろう、テキスト検索機能の不便さ。
最近の VS2008 etc に触れてから VB6 を触ると露骨で、IDEの機能差が生産性に深く影響していることが痛いほどにわかる。

ただ世の中便利なもので、ないものは誰かが作ってくれる。VB6 のテキスト検索についても例外ではない。というわけで、インストール必須のテキスト検索アドインをメモしておく。

ちなみに Visual Studio だと Grep と言わないで、ファイルから検索、テキスト検索などと言う。
にも関わらず、Grep という言葉に辿りつかないと Google で検索しても見つけられなくて苦労した。腑に落ちない。

--------------------

以前使っていたアドイン。

  • 名前GrepForVb6
  • 機能 : テキスト検索、一覧、ダイレクトジャンプ 。Visual Studio とのドッキング。
  • 特徴 : シンプルですっきりしたUIは秀逸。正規表現を使わないならこれ。

新しく試しているアドイン。

  • 名前GrepVB Plus
  • 機能 : テキスト検索、一覧、ダイレクトジャンプ、正規表現。
  • 特徴 : 高機能。正規表現と、検索結果が9つあるのが良い。その反面、UIがごちゃっとしていて、Visual Studio とのドッキング不可なのでウィンドウの管理がしずらい面も。

※画像を貼っておきたいのだけど、自宅に VB6 がないもので…残念

以上。

2010年9月14日火曜日

3980円のアダプタでMacBookProを動かしてみた

先日購入したかわいい Mac ちゃん。実は訳ありモノだったので、バッテリーとACアダプタがなかった。
そこで、とりあえず起動の確認をと思いACアダプタを探していたのだけど、情報の少ないこと少ないこと。ちなみに MacBookPro用 は純正だと MagSafe(磁石式ACアダプタ)ってやつの 85W が必要なのだけど、これがまたあまり売ってない…。
そんな中調べた選択肢は、こんな感じだった。
  • ヤフオクで中古を購入
    ¥4,000~¥5,000
  • ヤフオクで中古をあやしい中国業者から購入
    ¥3,000~
  • 純正を購入
    ¥7,800
  • 他社製、互換アダプタを購入(秋葉原ソフマップで発見)
    ¥6,980
ヤフオクは、、落札待ち&相場チェックで時間がかかりすぎるし、
ヤフオク業者は、、怪しすぎる笑。しかも悪評付きで、海外発送だから到着まで2週間。
しかも純正はコードが劣化して断線しやすいという噂だし(実際にAppleShopにいくと、実機のコードが切れてたりする笑)、最新型はジャックの形がコードに負担が少ないL字タイプに変わっているので、なるべく中古は避けたい。
しかし、新品純正は高すぎる。
他社製も、他社製にしては高すぎる。1,000円差ぐらいなら純正を買ってしまいたい気持ちになる。
・・・と、Mac が到着して早くアダプタが必要なのに、八方塞がりであった。
(訳ありで価格を抑えたのに、高いアダプタ買ったら意味が無い)

しかし楽天市場をチェックしていると…秋葉原ソフマップと同じ他社製が ¥3,980 で売っていた(送料込み)。神の御加護だ。

(こいつ。でもさすがに ¥3,980 はもうない)
ちなみに、この製品の情報がネット上に少なすぎるので書いておくと、名前は「MacBook用AC アダプタ ブライトンネット ABB-1675W 75W MacBook用 ACアダプタ 」だ。MacBook Pro にもつかえるMagSafe タイプで、もっと売れていいと思うんだけど、気にかかる点が2つある。
  • 電圧が75W
  • MacBookPro用って書いてあるけど、対応機種が3つぐらいしか書いてない(MacBookはたくさん書いてある)
電圧に関して、75Wでも動くみたい(ソフマップの人談)なのだが、純正は85Wだし、なんせかわいい Mac だからあまり冒険したくない。
対応機種に関して、基本ProならOK(ソフマップの人談)だけど、対応機種に乗ってないんじゃ…なんせかわいい(略
っていうのが人情。誰か使っている人のレポでもあれば安心できるんだけどね・・・。

・・・ということで。3,000円引きのインパクトには勝てず買ってしまったのでレポしておく。
IMAGE_173 どーん。
写真だとわかりづらいけど、製品名とかキラキラして結構高級感のあるパッケージ。
しかも!
IMAGE_174
普通のACアダプタ用ジャックから、MagSafeタイプへの変換コードが付いている!!!ということは、Pro じゃない MacBook にも使える、MacBook / MacBookPro 両対応っていうのはそういうことだったのだ。さらに、磁石側もストレートではない新しいL字タイプだ。
で、
IMAGE_175 ぶーん
普通に起動しました笑。心配して損した。。
ちなみにこのマシンは MA464J/A で、初期のMacBookProになる。アダプタのパッケージには対応って書いてないけど、今のところ全くもって問題なさそうだ。対応の基準ってなんなんだろうか。とりあえず、ひきづづき使用を続けることにする。が、このレポートを参考にして行った結果に対する責任を当方は一切負いません :P
ちなみに試すとしたらこのアダプタ、5000円以下で買えるのに、普通に6000円以上で売ってるとこがあるので注意。以下の相場も参考のこと。以上。

2012/01/05 追記 最近は品薄でネットでは見つかりづらいようです。
MacBook用ACアダプタブライトンネット ABB-1675W 7...
MacBook用ACアダプタブライトンネット ABB-1675W 7...

価格:4,893円(税込、送料別)
75W 16V MacBook/MacBookPro向けACアダプタブライトンネット 75W M...
75W 16V MacBook/MacBookPro向けACアダプタブライトンネット 75W M...

価格:4,986円(税込、送料別)
ブライトンネット 75W MacBook用 ACアダプタ ABB...
ブライトンネット 75W MacBook用 ACアダプタ ABB...

価格:5,030円(税込、送料別)