2013年6月29日土曜日

Windows 8.1 PreviewでTungstenを動かしてみた

Windows 8.1 Previewが最近公開されたようです。早速試験環境に入れて、Tungsten 1.12の動作を軽く確認してみました。

概ね問題なさそうです。TridentはIE11として動いているようです。しかし、 ユーザーエージェントが変だったり、IEコンポーネントのバグがIE11でも直っていなかったり、etc.。

  • ユーザーエージェントに書かれているOSがなぜかWindows 8.1ではなくWindows 8
  • ユーザーエージェントの追加処理に問題あり(Tungsten側のバグ?)
    ※like Geckoの最後の1文字が欠けてしまっているのを確認
  • HTML5 testのスコアがIEより1点だけ低い
    ※差は「Custom search providers」。任意の検索プロバイダーを選べないのが原因?
  • Tridentのコンテキストメニューに「要素の検査」が出てくるが機能しない

表示例:

ユーザーエージェント確認のため、診断くんを勝手ながら使わせていただきました。 (個人情報消去のため一部加工。まずければすぐに消します)

IE10の(IEコンポーネントの)バグはIE11でも直らない

IE10で問題になっているMSN産経ニュースや楽天市場の検索結果画面でフリーズする問題は、残念ながらIE11でも健在です。
# これはIEコンポーネント側の問題なんだけど、MSはいつまでこのバグをほったらかしにするんだろうか。 直す気あるの?まったく。

もしフリーズしてしまった場合は、サポートページの通り、TungstenBrowser.exeを強制終了してください。

オペレーティングシステムのコンテキスト

Windows 8.1用が新設されたようです。

無駄な互換性チェックをさせないために、TungstenにはWindows 8のコンテキストIDを入れています。
Windows 8.1だけでなく"Preview"まで入ってしまっていますが、正式版でもコンテキストIDは同じでしょうか・・・?
というか、Windows 8.1用のコンテキストIDはまだ公開されていないような気がします。 そのうちコンテキストIDがわかるようになるでしょう。

2013/07/19追記・修正
いつの間にか公開されていたMSDNの該当ページによると、Windows8.1用のコンテキストIDは{1f676c76-80e1-4239-95bb-83d0f6d0da78}のようです。
また、Windows8.1を8と誤認識するのは、Win32APIのGetVersion(またはGetVersionEx)がWindows 8.1用のコンテキストIDをマニフェストに入れないと、わざとWindows8のバージョン番号を返すようになっていることが原因のようです。 なぜそんな余計な面倒なことをしてくれるのか・・・。