Windows 10 TP Build 9926 で古い Windows Update を表示する
1月に公開された Windows 10 TP では、コントロールパネルにあった Windows Update のアイコンが非表示になっています。これを表示できるように変更するには、下記のレジストリを1から0に変更するだけのようです。
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX]
"IsConvergedUpdateStackEnabled"=dword:00000000
Windows 8.1 上のWPF アプリで、タッチキーボードを表示させたい
突然ですがデスクトップ版 IE ではテキストボックスにタッチしてもタッチキーボードは自動的には表示されません。でも、デスクトップ版 Chrome ではテキストボックスをタッチするとタッチキーボードが表示されます。この違い意外と気になってます。そのためか、Surface や 8インチタブレットとかでは、デスクトップ版 IE は使いづらいですね~。
WPFアプリでも普通の作り方では、テキストボックスでタッチしただけではタッチキーボードは表示されないです。でも工夫すればさすがにできるだろうって、ググってみるとinfragisticsさんのブログにタッチキーボードを呼び出す方法が載っていました。
ここのサンプルコードでは、テキストボックスをタッチするとタッチキーボードが表示されます。ちなみに、TextBoxの代わりにWebBrowserコントロールを配置した際にも、(このサンプルレベルでは)サイトに表示されたフォームをタッチするとタッチキーボードが表示できたのでこのやり方使えそうです。なお、ここで使われている APIは Windows 8.x からなので、Windows 7 なタブレットでは動作しなません。
IE10 でメンテナンスポリシーが廃止に&その代替機能
IE10からメンテナンスポリシーが廃止され、IEAKや基本設定を代替機能として利用せよというのが、下記のMSDNドキュメントに記載されています。グループポリシーでIEの設定を展開していた場合、そのままでは動作しなくなるので知らないと混乱することになるかと思います。
Internet Explorer のメンテナンスの代替機能
http://technet.microsoft.com/ja-jp/library/hh846772
ただ、このコンテンツの内容は、実際の挙動と異なる所があり気になっていたのですが、最近、英語版は削除されていることがわかりました。この記事は、どうも古い内容だったようです。
http://technet.microsoft.com/en-us/library/hh846772
で、新しく記載されている内容は、下記。
Appendix B: Replacements for Internet Explorer Maintenance
http://technet.microsoft.com/en-us/library/jj890998.aspx
結構内容が変更になっていることがわかります。実際の挙動とも一致しているみたいです。
Windows Server 2012 で windows.old フォルダを消すためにディスク クリーンアップを追加する
Windows Server 2012 では、デフォルトでは「ディスク クリーンアップ」がインストールされていない。そのため、2012 のベータ版や 2008 がインストールされたディスクにインストールした際に残る「Windows.old」フォルダが消せない。
「ディスククリーンアップ」をインストールするためには、 PowerShell で、「Add-WindowsFeature Desktop-Experience」コマンドを実行し「デスクトップ エクスペリエンス」を追加する。再起動後、「ディスク クリーンアップ」が利用可能となる。
参考
WDDメモ メトロスタイルアプリ関連
- メモです。聞き間違えなどがあると思いますので参考までに。
Metroスタイル
- コンテンツに没入できるスタイルにする
- スタイルデザイン
- できるだけ不要なものは省く
- 早くて滑らか
- アニメーションをたくさん使う
- マウスなどの動作に対して反応をする
- きれいなスケーリングと使いやすいスナップ
- スナップは2つまで表示させることができる
- 100%の画面とスナップで表示させるデザインを考える必要がある
- 適切なコントラクトの実装
- タイルの有効活用
- タイルでリアルタイムな情報表示
- いつでもつながっている
- オフラインでも動くようにする
- クラウドとの連携
- メトロの原則に準拠
デザイン
- 基本ナビゲーションがない
- ハブ→スポーク→詳細 という3段階の階層スタイル
- 階層システムの要素:大量のコンテンツ、複数のセクションやカテゴリがある
- フラットシステム:一画面で完結可能(IE10など)、ドキュメント、ゲーム、IMなど
- デザインはシンプル
- デザインガイドが存在するのでそれに従ってある程度同じ動作ができる
- レイアウト:グラデーションはなくして線で堺をつける
- 詰め込みすぎない、余白が大切
画面サイズや方向に応じたデザイン
- 1024/768 最小
- 1366/768 以上が推奨
4つのスタイル
- 4つのスタイルに対応したアプリを作る必要がある
- FullScreenLandscape(全画面)
- Filled(スナップの余分)
- Snapped(スナップ、横幅は320pxに固定される。推奨サイズの画面サイズではないとスナップ表示は不可)
- FullScreenPortrait(縦画面)
考慮点
- スクリーンサイズ
- スナップ、ポートレイトの画面に対応
- ビジュアルなフィードバック
- たとえばマウスの動きに合わせたタイルの動き
- 解像度、→高解像度に対応する
- SVG→ 解像度に依存しない
- ビットマップは100%、140%、…というように低い解像度と高い解像度用の画像を用意する
- グリッドレイアウトが重要
- 方眼紙にアプリを配置するように
- 1ユニット 20px×20px
- サブユニット 5px×5px
- 1カラム 80px
チャーム、アプリバー
- アプリバーは、上 or 下に配置、アイコンの追加、変更が可能、色も変更可能
- クリックしてほしいことを意図するような多数のアイコンは
共通化してアプリバーに作る
-
- グローバルコマンドは右側に
- チャーム:検索、共有、設定 etc がある
- 検索方法は、チャームで実現することを考える
- 共有 クリップボードの進化系
- 他のアプリにデータを投げる
- ソースの共有
- オンラインコンテンツへのリンクの共有
- ターゲットの共有
フライアウト
- 一時的に表示、ちょっとしたもの
パンの注意点
- 横と縦の動きを同時に作らないようにする
タイル
- タイルはアイコンではない
- タイルはアイコンではなく、アプリの顔
- 表玄関、最新情報、ミニアプリ、フォトフレーム、リマインダー、News情報、アプリの延長、次の予定
- 一つのアプリでも複数のタイルを作成することができる
- セカンダリタイル
- アプリバーにピン留め
- 1×1は必須 2×1はオプション
- ライブタイルも可能
トースト通知
- WINDOWS PUSH NOTIFICATION SERVICE (WNS) を利用するなど方法がある
セマンティックズーム
- 全体を俯瞰してみる
- ロゴを使う:小さいとき
- 詳細を表示:大きいとき
フォント
- SegoeUI :ウエイト4つ
- 日本語は、メイリオUIになるだろう。ただし、ウェイトが2つしかない。
ライフサイクル
タッチ
- 長押し、タップ、スライド、スワイプで選択、ピンチでズーム、ローテート、縁からアプリバー、チャーム
開発環境
- VS11にはテンプレートがある
- シミュレータを準備している
- 解像度を変更する事ができる
- タッチをシミュレートする事が可能
- ポートレイト表示が可能
- GPSのエミュレートにも対応
Metroスタイルアプリ
- appx という一つのファイル zipファイル形式
- Windows Store からインストール
- マシンではなくユーザに対してライセンスを付与する
- 企業向けの展開方法もある
リンク
- Understanding the Windows 8 silhouette
- アプリのユーザー エクスペリエンスのデザイン
WDD メモ Internet Explorer 10 の概要 /Internet Explorer 10 そしてそれ以降に対応するためには?
- メモで、聞き漏れ、聞き間違えがあると思いますので参考までに。
Internet Explorer 10 の概要
- IE8は日本で一番利用されている。
- IE9は、3割を超えている。今後トップシェアになると思われる。
- HTML5
- モバイル向けのHTML5のサイトが増えてきている。
- SkyDrive は、HTML5を導入
- IE9のファイルアップロード機能は、Silverlight
- IE10は、ファイルAPIを利用している
- HTML5でゲームや動画 プラグイン不要で対応可能
- Just A friend HTML 5を利用したデモ
- CSS transitions→アニメーションエフェクト
- http://www.justafriend.ie/
- IE10のWindows7版のリリースは不明。
- IE10は、2つのブラウザを搭載
- IE10はIE9のブラッシュアップ版、UIはほとんど変わりがない
- Webが主役
- Metroスタイル版のデスクトップ版との違いは、タッチ操作向け、クロムレスUI、プラグインフリーなど
- 高速、滑らか
- ハードウェアで高速化されたブラウジング
- パフォーマンス最適化、IE9より高速化
- IE10のJavaScriptは速くなった
- 信頼
- スマートスクリーンフィルタ、マルウェアのダウンロードなどをチェック、追跡防止
- 拡張保護モード(新規)
- Metroスタイルではデフォルトで有効
- AppContainerというIL。サンドボックスみたいなもの。
- デスクトップ版でも拡張保護モードで動かすオプションがある。
- 今までは、64bit 版でも32Bit版のIEがデフォルトで動いていた。これは、プラグインがないなどの理由があった。
- Metroスタイル版は64Bit版で動いている
- デスクトップ版は、32Bit版で動作する
- ただし、デスクトップ版で拡張保護モードで動かすと64Bit版で動作するので、プラグインが動作しないなどの問題が起きる可能性がある
- 拡張保護モード
- メモ
企業向け設計
- IE10向けIEAK もリリース
標準準拠&コンパチビリティ
- テストケースを提供:7548のテストケース
- IE Testing Center
- 最新のWeb標準への対応
- IE9,→IE10 標準への対応は2倍に増えた
- CSSドラえもん IE10でちゃんと表示
- Windows8タッチに最適化
- MS Pointing API?
- Pointer and gesture events
- バッジ機能でタイル上にステータスを表示可能(数字や定義済みグリフのみ?)
- Windows Internet Explorer 10 開発者向けガイド
- Internet Explorer 10 Compatibility Cookbook
Internet Explorer 10 そしてそれ以降に対応するためには?
- IEは一つの実行ファイルでMetroスタイル版も動かすようになっている。
- Silverlightでしかできないことはまだある。すべて、HTML5でできると思ってはいけない。
- セーブマークアップ(他のブラウザでも同じように使えるようにするポリシー)
- 解釈にずれがある場合は、IEでの実装の優先度を下げる
- 安定した仕様を実装するようにする
- 実装する仕様は33個に増えた。
- JavaScriptエンジンは、chakra Metroスタイルアプリも同一のものを利用する
- Compact Inspectorを使おう
- JSライブラリ
- FiddlerでサイトにJSを追加して注意すべき項目が表示される
- 【IE】 IE10 互換性の考え方と Compat Inspector
- タッチファーストUI
- プラグインをチェックして、プラグインが必要であればプラグインを呼び出す
- サイトからMetroアプリを呼び出す
WDD メモ Windows 7 / Windows Server 2008 R2 アプリケーションの Windows 8 互換性対応
- WDDのメモです。聞き漏れ、聞き間違えなどもあると思いますのでご参考までに。
Windows 7 から Windows 8 への移行
- デスクトップアプリ→デスクトップアプリ、メトロスタイルアプリ への移行
- Webアプリ→Webアプリ、メトロスタイルアプリ
- デスクトップアプリは、デスクトップアプリへの移行が多いはず。
アプリケーションをインストールしようとしたら「OSのバージョンが違います」というメッセージが表示された場合
- Windows8の内部バージョンは、6.2
- 回避策
- VersionLie Shimを利用する
- ACT を利用する
- 対処策
- OSのバージョンではなく、機能を検索する。
- VerifyVersionInfo Win32 API でチェックする
- Operating System Versioning
アプリケーションをインストールしようとしたらフォルダへのアクセスが拒否された
- \program files\WindowsApps はメトロスタイルアプリのインストールフォルダ
- TrustedInstallerが管理
- 対処策
- WindowsApps フォルダにはアクセスしないようにする
- Security App Detection Rules Update
pdfファイルが Windows Reader で表示される
- アプリケーションから規定のアプリケーションを設定することができない。 候補になるだけ。
- 複数ある場合は、ユーザが選択する
- IApplicationAssociationRegistration API の以下のメソッドは利用しない
- QueryAppIsDefault/QueryAppIsDefaultAll
- QueryCurrentDefault
- SetAppIsDefault/SetAppIsDefaultAll
- 解決策
- IApplicationAssociationRegistrationUI::LaunchAdvancedAssociationUI APIを利用して、選択のダイアログを表示させる
- File Type and Protocol Associations Model
WebサイトへのリンクをクリックしたらIEが全画面で表示される
- インターネットオプション→プログラム→リンクの開き方を選択します→常にデスクトップ上のInternet Explorer で を選択する
- 「デスクトップで Internet Explorer タイルを開く」のチェックをつけるとIEのタイルを押すとデスクトップのIEが開く
- Desktop Apps May Not Be Visible after Launching the Default Web Browser
- メモ:下記の設定を追加するとメトロスタイルのIE起動時にダイアログが表示される
- < meta http-equiv="X-UA-Compatible" content="requiresActiveX=true"/ >
- http://shinichiaoyagi.blogspot.jp/2012/02/win8-metrostyle-ie-desktop-ie.html
「互換性」タブに「デスクトップコンポジションを無効にする」がなくなった
サービスの状態がタスクトレイに反映されません
- セッション0とセッション1のプロセス間通信ができない。電源管理の問題
- サスペンド状態に移行するとき、起動しているアプリケーションに対して、WM_POWERBROADCASTというメッセージを投げる
- スリープ状態では、すべてのシステムアクテビティが中断
- 接続維持スタンバイ(Win8追加)
- スマートフォーンのような電源管理
- Metroスタイルアプリ:ライブタイルのお更新、新着メールのダウンロード
- デスクトップアプリ:Desktop Activity Moderator(DAM)により管理
- Session1以上のプロセス
- 接続維持スタンバイ中は中断
- Session0のプロセス
- 必要に応じて再開
- DAMからWM_POWERBROADCASTの通知を受ける?には、Windowがある場合は、RegisterSuspendResumeNotification コンソールアプリの場合は、PowerRegisterSuspendResumeNotification で登録する必要がある
- または、ソースコードを修正できない場合はPromoteDAM Shim を利用する
- Desktop Activity Moderator
- アプリケーションの電力効率を向上させる
.NET 3.5アプリが起動しない
- Windows7からアップデートした場合は、インストールされているが、通常にインストールするとインストールされない。
- WindowsUpdatteよりインストール
- 再配布可能パッケージとしてインストール
- 解決策
- イメージからコピー
- \sources\sxs\
- xcopy e:\sources\sxs\*.* c:\dotnet35 /s
- Dismコマンドでインストール
- Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:c:\dotnet35 /LimitAccess
- レジストリに下記を設定しておくと、.NET 3.5アプリを起動時に表示されダイアログで「この機能をダウンロードしてインストールする」を選択すると下記のローカルのファイルを参照する
- xcopy e:\sources\sxs\*.* c:\dotnet35 /s
- [HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Servicing] “LocalSourcePath”=”c:\dotnet35”
- イメージからコピー
- .NET Framework 4.5 Is Default and .NET Framework 3.5 Is Optional
VB6.0
- Windows7と同様
- Support Statement for Visual Basic 6.0 on Windows Vista, Windows Server 2008, Windows 7, and Windows 8
Windows8ネイティブモード
- Application (Executable) Manifest