Tried to use Windows Developer Preview a little.

先週から、Windows8 の開発者用のお試し版? がダウンロードできるようになりましたね。ちなみに、名前には「8」がついていないので、正式な製品リリースの名称は、「Windows8」 ではないのでしょうね。

Windows Developer Preview Download

僕も当初Windows7上のWindows VIrtual PCにインストールを試みようと思っていろいろ情報を集めてたんですが、Virtual PC上ではインストールができない、というようなブログ記事がほとんど。

自分は別にデベロッパーではないけど(^^;;;・・・ミーハーな僕も興味本位でもなんでもいいので、なんか試してみたい!!!、というわけで、先月VAIO Zを買って休眠している VAIO Type T(TZ90NS)を引っ張り出してきて、 Windows Developer Preview を インストールしてみました。単にインストールして、ちょっとだけMetroUIを試したい、というだけですので、あしからず….

VAIO Type Tの主な仕様は、

  • Core2Duo U7600(1.2GHz)
  • DDR2 533 2GB
  • チップセット内蔵 インテル グラフィックス・メディア・アクセラレーター 950
    また、メモリが2GBしかない関係上、64bit ではなく、32bit(x86)版のものをインストールしました。まだ、前の環境(Windows7)が残っていたので、一度Windows7を起ち上げ、Windows Developer Preview の setup.exe を使ってインストールしました。

DSC00259

実は、この画面に行くまで30分ぐらいかかってます(^^;;;  やっぱクリーンインストールにしておけばよかったかな・・・。

とは、いいつつ、インストールにかかる時間は思ったよりかからなかった。ベータ版とか製品版だともっと時間かかるようになるのかも。1~2度再起動がかかり、設定画面でWindows Liveアカウントの入力とかをした後、やっとインストール完了。

DSC00267

インストール直後の画面は、800×600 の解像度のままで、ドライバは標準のVGAドライバみたいで、動作は遅いです。で、まず、チップセット内蔵のグラフィックドライバをインストール。すると、やっと Windows8らしい、ロック画面に。。。

DSC00270

このロック画面、、タブレット端末を想定しているみたいで、画面をドラッグして上の方へマウス移動すると(画面をめくると)、ログイン画面が出てきます。何から何まで、画面タッチデバイスありきのUI、という印象です。

画面表示は全部英語リソースですが、入力(IME)と表示に日本語が使用できますが、あくまでDeveloper Preview なので、スクロールバーとか細かいところを見れば、画面表示はほとんど未完成。未完成というより、まだUIデザインが決定されていないんでしょうねぇ。

start

Metro UIも、タッチデバイスがないと全く意味をなしません(笑) マウスのホイールをクルクル回すとスクロールしますが・・・

で、デスクトップ上のウィンドウフレームはWindows7と変わらず。ウィンドウが角丸ではなく、角張っているぐらいで、エクスプローラはかなり様変わりしてますね。

コントロールパネルも真っ白(^_^;)

control-panel

で、一つ、気になったのが・・・コレ↓

16bit-support

Windows7では、16ビットアプリのネイティブサポートは終わった、と思ってたんですが・・・(動かしたいときはXPモードで)、Windows7のコントロールパネルでこんなのあったっけ??? 僕がインストールしたのが32bit版だったので、32bit版のみに含まれているだけかもしれません。

64bit版のWindows8では、機能限定版の?Hyper-Vが入るみたいなので、レガシーアプリは完全に仮想環境で、という風になるんでしょうねぇ。

感想

肝心のMetro UIは、マウス操作の環境では、全く意味ないです(笑)MBAのタッチパッドみたいなデバイスが最低限必要す。

従来のデスクトップはWindows7とほぼ変わらず。エクスプローラのメニュー、ツールバー、コマンドバーが一掃されて、リボンUIになってるとことか、タスクマネージャが、まともな情報を表示するようになったとか、32bit版なので試してないけどHyper-Vとか、内部動作の細かいところがブラッシュアップされている感じ。ちょっと使ってみた感じだと・・・

Windows 8(Developer Preview) = Windows7.5  + スマートフォン(MetroUI)

というような印象を持ちました。CPUとかメモリはそこそこのものでも、動くけど・・・古いチップセット内蔵のグラフィック機能だけだと、使えない!です。

画面切替のアニメーションなんかはスムーズなんだけど、チップセット内蔵のGPUが非力すぎて、ムービーが再生されてる状態で画面を切り替えたりすると、GUIアニメーションの優先度が高いのか、動画再生がカクカクする。CPUより、GPU(グラフィック)の重要度を再認識させられた感じ。

結論

画面タッチデバイスがないと、まったくもって楽しくないです(笑)

HHKB Professonal 2 with AX Keyboard driver

メモです。

キーボードを 念願だった、PFU の Happy Hacking Keyboard Professional 2 に買い替えました。予算が足らなくて、Type-Sは見送りましたけど・・・。

前は日本語配列なLite版を使っていたんですが、とうとう買ってしまいました!この件は、余所のくだらない日記ブログに書いたので(^^;;;こっちでは、英語配列に変更したときの設定をメモ。

DSC00241

まず、キーボードのDIPスイッチにて、モード設定を Lite EXT.モードに。これで、ダイヤモンドキー(っていうのかな?)をWindowsキーに。それと、ALTキーとダイヤモンドキーを入れ替え。

あとは、PFUで配布されている、HHKBキー配列切替ツール で、まずはキー配列を英語配列に切替える。

で、そこで終わればいいんですが、IMEトグルが、英語配列だと、ALT + 「`」 なのでかなり不便。xkeymacsでcontrol + セミコロン に割り当ててるとは言え、たまにキーフックが効かなくときがあるので・・・、この際だから、右Altキーに[漢字]キーを割り当てる方法 に載っている方法で、右ALTキーにIMEトグルキーを割り当てることにした。

レジストリをいじる。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\i8042prt\Parameters を開いて以下のキー・値に修正。

LayerDriver JPN  = kbdax2.dll
OverrideKeyboardIdentifier = AX_105KEY
OverrideKeyboardSubtype = 1

Windows2000/XPの頃の記事だけど、Windows7(64bit) でも問題無かった。この辺はほとんど変わってないんだなぁ。AXキーボード・・・残念ながら見たことない(^^ゞ

というわけで、かなり快適な入力環境が整いました(^^)

あとは・・・そうですね、PFUから Bluetooth版もしくは無線版のHHKB Pro が出ることを強く望んでます!!!

自前のC++オブジェクトをjscriptで操作させたい

単純にCOMオートメーションサーバーを作成すれば事足ります。コードの再利用という点から考えてみてもそれがいいのですが・・・、一つのプログラム内で完結させたいといった時に調べてみました。

たとえば、自作の複雑なオブジェクトを持つアプリケーションがあって、jscriptなどのスクリプトでプラグインを書いてもらう、というようなケースなどでは、スクリプト環境をホストしなければなりません。

完全に自分用のメモで(^^;、 ネットなどで検索をしたり、MSDNドキュメントを拾い読みなどをまとめた備忘録です。あしからず。

で、やはりCOMのお世話にならないといけません。Visual Studio Express Editionでは全部自分でコーディングしないといけないので、退屈なコードを書かないといけないところが面倒です・・・。

手順としては、

  1. スクリプトから操作させたいオブジェクトをIDispatch を継承、もしくは、オブジェクトへのラッパークラスをIDispatch実装クラスでインプリメントする。
  2. スクリプトをホストするため(スクリプトからの様々な通知を受け取るため?)に必要なIActiveScriptSite の 実装クラスを作成

で、これらを使って、以下を順番に実行。

  1. CoCreateInstance APIでIActiveScriptのインスタンスを生成
  2. IActiteScript::SetScriptSite()へIActiveScriptSiteの実装クラスのインスタンスをnewして放り込む。
  3. IActiveScript::QueryInterface()でIActiveScriptParse インターフェイスポインタ(IID_IActiveScriptParse)を得る。
  4. IActiveScriptParse::InitNew()をコール
  5. IActiveScript::AddNamedItem()で、自前のC++オブジェクトの名前をつける。スクリプトではこの名前を使ってアクセスさせる。
  6. IActiveScriptParse::ParseScriptText()でスクリプト文を解析させる
  7. IActiveScript::SetScriptState(SCRIPTSTATE_CONNECTED)をコール
  8. IActiveScript::SetScriptState(SCRIPTSTATE_CLOSED)をコール
  9. インターフェイスポインタの後始末

という流れ。

続きを読む

エクスプローラー(Windows7)のコマンドバーにボタンを追加する

東日本大震災の影響で Internet Explorer 9の日本語版リリースが延期されましたね。インターネット上のトラフィックが増えることによる影響を考慮してのことでしょうか。しょうがないですね。

さて、本題です。
(※注)かなり長文になります。間違い・勘違いがあると思うので、随時修正が入るかと思います。すみません。

Windows7のエクスプローラはXPのものとは違って、メニュー/ツールバーがデフォルトで非表示になってますね。その替わりにWindows7のエクスプローラには新しくコマンドバーっていうのがウィンドウの上部がついてます。

コマンドバー

正式名は確認してませんが・・・(たぶんコマンドバーで合ってるはず)、このコマンドバーを自由にカスタマイズできるツールがWindowsに標準ではありません。サードパーティー用にわざとそういうカスタマイズできる設定を提供しなかったのか、それとも、マイクロソフトはこのユーザーインターフェイスをあまりいじって欲しくないのか、理由は分かりませんが、カスタマイズできればそれに越したことはありません。

僕はここに、【コマンドプロンプト】ボタンを追加できれば・・・というのが今回の備忘録を書くきっかけです。

続きを読む

Windows7 SP1

先週Windows7 Service Pack 1がリリースされて、先日早速適用してました。

まず、SP1のディスクイメージをダウンロードしてDVDに焼いてからやろうかな・・・と思ったんだけど、Windows Server 2008R2とWindows7 用のものが一緒に入っているイメージしかなく、ファイルサイズもバカでかいので Windows Updateから直接適用させました。。。

これが、失敗の元。(ーー;;;

コントロールパネルから、Windows Updateを起動して、ダウンロードが始まりました。ファイルサイズは90MBぐらい・・・これぐらいなら、すぐ終わるでしょう・・・。

・・・30分経過・・・50%から全く進まない。・・・・1時間経過・・・ダウンロード、終わらん・・・1時間10分経過・・・・イライライライライライラ・・・・・

ん?もしかして・・・Security Essentials のリアルタイム保護を外さないといけないのか??? そうこうしているうちに、1時間30分経過。ダウンロードが終わる気配もなく、ハードディスクのアクセスランプがチカチカしっぱなし。。。

しびれをきらして、キャンセルボタンをクリック。はぁ・・・時間の無駄遣い・・・。

公開されているSP1のイメージファイル(ISOファイル)をダウンロード。ものの10分ほどで終了。どゆこと?(笑)
DVDに焼いてから、DVDに入っているSP1のインストーラを起動して適用したら、あっけなく終わった( ̄。 ̄;)

なんなんだよ、Windows Update・・・orz

SP1を適用して、再起動したら、あきらかにメモリの使用量が増えてました。普段なら起動直後のアイドル状態で、1.4GBくらいだったんですが・・・2GB超になってます・・・何回か再起動してたら元に戻りましたが・・・なんなんでしょうね・・・???

いいかげん、あたらしいPCがほちい。