2016-07-21 4 views
2

私はUWPアプリを持っています(これは決して店に提出されません)。このアプリの中には "admin"セクションがあります。このセクションにボタンを追加して、ユーザーをWindowsのロック画面に移動させたいと思います。そこから、ユーザーは別のユーザーとしてログインすることができます。これはUWPアプリから可能ですか?上記のように、このアプリはストアには入っていないので、ストア要件を満たす必要はありません。Windowsのロック画面をUWPアプリからナビゲートすることは可能ですか?

+0

あなたは私の答えをチェックしましたか?何の問題? –

答えて

2

上記のように、このアプリはストアには入っていないので、ストアの要件を満たす必要はありません。

あなたのアプリはストアにアップロードされないので、VS2015TemplateBrokeredComponentsを使用して、UWPアプリと従来のデスクトップアプリの間のブリッジを構築できます。これはつまり、この作業のためのUWPアプリ用のAPIはありませんが、Win32に基づくAPIがこの問題を解決できることも意味します。

この作業を行うには、開始するにはBrokered Windows Runtime Components for side-loaded Windows Store appsを参照することをお勧めします。

このようなアプリを構築するために必要なステップは、VS2015TemplateBrokeredComponentsの簡単なガイダンスに従うことができます。ここで私しませんリスト再びステップ、私はあなたがBrokered WinRT Componentプロジェクトで「IAppLauncher」インターフェースを作成し、ここでは例えば、このシナリオのために必要がある場合がありますだけでいくつかのコードを貼り付けます:

[ComVisible(true)] 
public interface IAppLauncher 
{ 
    /// <summary> 
    /// Launch desktop application from file name 
    /// </summary> 
    /// <param name="fileName">target application executable file name</param> 
    void Launch(string fileName); 

    void LaunchWithArg(string fileName, string arguments); 
} 

は、「作成ランチャこのインターフェースから、」クラスの継承:

[ComVisible(true)] 
public sealed class AppLauncher : IAppLauncher 
{ 
    /// <summary> 
    /// Launch desktop application from file name 
    /// </summary> 
    /// <param name="fileName">target application executable file name</param> 
    public void Launch(string fileName) 
    { 
     Process.Start(fileName); 
    } 

    public void LaunchWithArg(string fileName, string arguments) 
    { 
     Process.Start(fileName, arguments); 
    } 
} 

、登録を構築するプロジェクトに参照し、マニフェストファイルを修正後、あなたがこのような例のためにあなたのUWPのアプリでこれを使用することができます。

private void Button_Click_1(object sender, RoutedEventArgs e) 
{ 
    new AppLauncher().LaunchWithArg(@"C:\WINDOWS\system32\rundll32.exe", "user32.dll,LockWorkStation"); 
} 
関連する問題