Windows 8タブレットのストアアプリをVB.NETで起動する

Programming Windows

Windows 8のアプリケーションは、インストーラなどからインストールする通常のアプリケーションと、Windowsストアからダウンロード・インストールする「ストアアプリ」の2種類がある。

「ストアアプリ」は、通常のアプリケーションと異なり、他のプログラムから起動することが出来ない。

試しに、ストアアプリの本体の場所「C:\Program Files\WindowsApps」内にあるEXEファイルを管理者権限でキックしても、起動することが出来なかった。

何かやり方ないかと調べたところ、VBScriptで無理やり起動している方が。

詳細はこちら⇒「ストアアプリを自動起動/コマンドラインからストアアプリ起動 | Windows8 Room

これと同様のことをVB.NETでやってみた。

なお、Visual Studioのバージョンは以下です。

  • Visual Studio Professional 2012
スポンサーリンク

やってる内容はこうだ。

  1. クリップボードにストアアプリの名称「カメラ」を保持する
  2. 「Windows」キーで「スタート画面」を表示させる
  3. 何かキー押下し、「チャーム」を表示させ、「検索」を入力できる状態にする
  4. クリップボードの内容(「カメラ」)を貼り付ける(「Ctrl+v」)
  5. 「Enter」キーを押下し、ストアアプリ「カメラ」を起動する

実際のソースはこちら。

'クリップボードクリア
Clipboard.Clear()

'クリップボードにテキスト設定
Clipboard.SetText("カメラ")

'「Ctrl+Esc」キー(Windowsキーと同様の動き)
SendKeys.Send("^{ESC}")
System.Threading.Thread.Sleep(1)

'「a」キーと「BS」キー(検索ボックス表示)
SendKeys.Send("a")
SendKeys.Send("{BS}")
System.Threading.Thread.Sleep(1)

'「Ctrl+v」キー(貼り付け)
SendKeys.Send("^v")
System.Threading.Thread.Sleep(1)

'「Enter」キー(カメラアプリ実行)
SendKeys.Send("{ENTER}")

何とも無理やりなやり方だが、いちようストアアプリを起動できた。

このやり方はWindows 8のみで通用するやり方なので、事前にOSの判定を行ってやる方がよさそう。

OSの判定はこちらの記事参照⇒VB.NETでWindowsのOSバージョン情報を取得する(Windows 2000~8)

参考サイト

ストアアプリを自動起動/コマンドラインからストアアプリ起動 | Windows8 Room

WSH JScriptを使いこなそう ~キーボード操作~

コピー・貼り付け・切り取り・元に戻す – VBレスキュー(花ちゃん) Visual Basic,VS6.0,VB6.0,サンプル,Tips

Windows8のコマンドプロンプトを管理者で起動方法は面倒くさい!! (簡単に起動する方法アリ):アシマネのIT奮闘日記:So-netブログ

インストールしたメトロ(Windows8ストア)アプリのリソースファイルを取り出す方法 – 【チラシの裏.net】

コメント

タイトルとURLをコピーしました