これは、学生はどのようにWindowsのデスクトップアプリケーションからストアアプリを起動し」昨日、私に質問をしていますか?「それはいい質問だと私の興味を喚起している、正直に言うと、答えは、単にこのような状況を考えたことはありませんでしたが、問題は本当にあまりにも面白いです。」Windowsストアからのデスクトップアプリケーションを起動する方法は確かにありアプリケーションは、フォーカスが「難しいことではありませんし、この要求を実現する方法であるを見てみましょう。
これは、学生はどのようにWindowsのデスクトップアプリケーションからストアアプリを起動し」昨日、私に質問をしていますか?「それはいい質問だと私の興味を喚起している、正直に言うと、答えは、単にこのような状況を考えたことはありませんでしたが、問題は本当にあまりにも面白いです。」Windowsストアからのデスクトップアプリケーションを起動する方法は確かにありアプリケーションは、フォーカスが「難しいことではありませんし、この要求を実現する方法であるを見てみましょう。
最初は、私はこの問題への考え方についてお話したいと思い、最初に考えたのは次のとおりです。「Windowsストアアプリの市場は、別のWindowsプログラムを開始すべきか?」、答えは達成するために、通常はURIまたはファイルの関連付けにより、明らかです。それはケースであること、のWindows Marketplaceのアプリケーションでは、このように魚を通じてデスクトップ・アプリケーションを起動することができるはずです。それから私は、私はメトロIEでMMSを実験マークされました://プロトコルは、Windows Media Playerを起動することができ、テストかどうか、結果が正しい開始され、これまでのところ、答えはデスクトップのWindows Media Playerのために、すでに明らかですこのようなアプリケーションが起動することができ、他のアプリケーションは、それを行うことができるはずですので、私は働いてテストを開始し、自分の考えが正しいか確認してください。
全体の試験プロセスは、によって達成されます。
(1)Windowsが呼び出されるオブジェクトとしてフォームアプリケーションか、このプログラムは、画像だけLableですが、開始時間を作るためにパラメータを渡すことができ、少し何かを変更しました。
Program.csの
- 静的 クラスプログラム
- {
- [STAThread]
- 静的な 無効メイン(文字列[] argsを)
- {
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(偽);
- Application.Run(新しいForm1の(引数));
- }
- }
Form1.csを
- 公共の部分クラスをForm1:フォーム
- {
- 公共のForm1()
- {
- }
- パブリックForm1の(文字列[] argsを)
- {
- InitializeComponent();
- 各データ=引数[0] .Split( ':' );
- もし(data.Length> 1)
- {
- ます。Label1.Text =データ[1]。
- }
- 他
- {
- ます。Label1.Text =「引数なし」。
- }
- }
- }
(2)その後、私はURIスキームへのアプリケーションの登録を参照して、callbillという名前の、コンピュータのレジストリでカスタムURIプロトコルを追加します
(3)最後に、Windowsストアアプリケーションプロジェクトを追加し、UI上のボタンを配置し、次のイベントのデリゲート関数Button.Clickを書きます
- 非同期プライベート ボイドButton_Click(オブジェクト送信者、RoutedEventArgs e)の
- {
- 文字列uriToLaunch = "callbill:Hello_Uri_Launcher" ;
- VaRの結果= Windows.System.Launcher.LaunchUriAsync(新しい待つウリ(uriToLaunchを));
- }
Windowsストアアプリケーションの実装の最終的な結果は、ボタンを押してください
私が最初に話題として、それが完了するまでにいくつかの簡単な手順と同様に簡単であること「が非常に困難に聞こえます」。
オリジナル:ビッグボックス Windowsストアアプリケーションからデスクトップアプリケーションを起動する方法