PackageManager.RequestAddPackageAsync メソッド

定義

オーバーロード

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>, IIterable<Uri>)

アプリ パッケージをインストールする前に、SmartScreen チェックとユーザー検証を要求します。 このメソッドは、ステージングおよび登録する外部パッケージを指定する packageUrisToInstall オーバーロードを提供します。

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>)

アプリ パッケージをインストールする前に、SmartScreen チェックとユーザー検証を要求します。

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>, IIterable<Uri>)

アプリ パッケージをインストールする前に、SmartScreen チェックとユーザー検証を要求します。 このメソッドは、ステージングおよび登録する外部パッケージを指定する packageUrisToInstall オーバーロードを提供します。

public:
 virtual IAsyncOperationWithProgress<DeploymentResult ^, DeploymentProgress> ^ RequestAddPackageAsync(Uri ^ packageUri, IIterable<Uri ^> ^ dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume ^ targetVolume, IIterable<Platform::String ^> ^ optionalPackageFamilyNames, IIterable<Uri ^> ^ relatedPackageUris, IIterable<Uri ^> ^ packageUrisToInstall) = RequestAddPackageAsync;
/// [Windows.Foundation.Metadata.Overload("RequestAddPackageAndRelatedSetAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> RequestAddPackageAsync(Uri const& packageUri, IIterable<Uri> const& dependencyPackageUris, DeploymentOptions const& deploymentOptions, PackageVolume const& targetVolume, IIterable<winrt::hstring> const& optionalPackageFamilyNames, IIterable<Uri> const& relatedPackageUris, IIterable<Uri> const& packageUrisToInstall);
[Windows.Foundation.Metadata.Overload("RequestAddPackageAndRelatedSetAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<DeploymentResult,DeploymentProgress> RequestAddPackageAsync(System.Uri packageUri, IEnumerable<System.Uri> dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume targetVolume, IEnumerable<string> optionalPackageFamilyNames, IEnumerable<System.Uri> relatedPackageUris, IEnumerable<System.Uri> packageUrisToInstall);
function requestAddPackageAsync(packageUri, dependencyPackageUris, deploymentOptions, targetVolume, optionalPackageFamilyNames, relatedPackageUris, packageUrisToInstall)
Public Function RequestAddPackageAsync (packageUri As Uri, dependencyPackageUris As IEnumerable(Of Uri), deploymentOptions As DeploymentOptions, targetVolume As PackageVolume, optionalPackageFamilyNames As IEnumerable(Of String), relatedPackageUris As IEnumerable(Of Uri), packageUrisToInstall As IEnumerable(Of Uri)) As IAsyncOperationWithProgress(Of DeploymentResult, DeploymentProgress)

パラメーター

packageUri
Uri Uri

追加するパッケージの URI。 サポートされている URI スキームはローカル ファイル パスとローカル ネットワーク パスのみであるため、URI はファイル URI スキーム (file://) に従う必要があります。

dependencyPackageUris

IIterable<Uri>

IEnumerable<Uri>

追加する依存関係パッケージの URI。 依存関係パッケージがない場合、または依存関係パッケージが既に登録されている場合、このパラメーターは null にすることができます。

deploymentOptions
DeploymentOptions

DeploymentOptions 列挙体の有効な列挙値。

targetVolume
PackageVolume

パッケージがインストールされるボリューム。

optionalPackageFamilyNames

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

ステージングおよび登録するメイン バンドルの省略可能なパッケージ ファミリ名を指定する文字列。

relatedPackageUris

IIterable<Uri>

IEnumerable<Uri>

ステージングおよび登録する必要があるメイン バンドル内の追加パッケージの URI。

packageUrisToInstall

IIterable<Uri>

IEnumerable<Uri>

ステージングおよび登録する他のパッケージ URI の一覧。 これには、インストールする外部パッケージへのパスを含めることができます。

戻り値

アプリ パッケージを追加した進行状況と結果。

属性

Windows の要件

デバイス ファミリ
Windows 10, version 1803 (10.0.17134.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v6.0 で導入)

こちらもご覧ください

適用対象

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>)

アプリ パッケージをインストールする前に、SmartScreen チェックとユーザー検証を要求します。

public:
 virtual IAsyncOperationWithProgress<DeploymentResult ^, DeploymentProgress> ^ RequestAddPackageAsync(Uri ^ packageUri, IIterable<Uri ^> ^ dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume ^ targetVolume, IIterable<Platform::String ^> ^ optionalPackageFamilyNames, IIterable<Uri ^> ^ relatedPackageUris) = RequestAddPackageAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> RequestAddPackageAsync(Uri const& packageUri, IIterable<Uri> const& dependencyPackageUris, DeploymentOptions const& deploymentOptions, PackageVolume const& targetVolume, IIterable<winrt::hstring> const& optionalPackageFamilyNames, IIterable<Uri> const& relatedPackageUris);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<DeploymentResult,DeploymentProgress> RequestAddPackageAsync(System.Uri packageUri, IEnumerable<System.Uri> dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume targetVolume, IEnumerable<string> optionalPackageFamilyNames, IEnumerable<System.Uri> relatedPackageUris);
function requestAddPackageAsync(packageUri, dependencyPackageUris, deploymentOptions, targetVolume, optionalPackageFamilyNames, relatedPackageUris)
Public Function RequestAddPackageAsync (packageUri As Uri, dependencyPackageUris As IEnumerable(Of Uri), deploymentOptions As DeploymentOptions, targetVolume As PackageVolume, optionalPackageFamilyNames As IEnumerable(Of String), relatedPackageUris As IEnumerable(Of Uri)) As IAsyncOperationWithProgress(Of DeploymentResult, DeploymentProgress)

パラメーター

packageUri
Uri Uri

追加するパッケージの URI。 サポートされている URI スキームはローカル ファイル パスとローカル ネットワーク パスのみであるため、URI はファイル URI スキーム (file://) に従う必要があります。

dependencyPackageUris

IIterable<Uri>

IEnumerable<Uri>

追加する依存関係パッケージの URI。 依存関係パッケージがない場合、または依存関係パッケージが既に登録されている場合、このパラメーターは null にすることができます。

deploymentOptions
DeploymentOptions

DeploymentOptions 列挙体の有効な列挙値。

targetVolume
PackageVolume

パッケージがインストールされるボリューム。

optionalPackageFamilyNames

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

ステージングおよび登録するメイン バンドルの省略可能なパッケージ ファミリ名を指定する文字列。

relatedPackageUris

IIterable<Uri>

IEnumerable<Uri>

ステージングおよび登録する必要があるメイン バンドル内の追加パッケージの URI。

戻り値

アプリ パッケージのデプロイの進行状況と結果。

属性

Windows の要件

デバイス ファミリ
Windows 10 Fall Creators Update (10.0.16299.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v5.0 で導入)

この例では、UWP アプリで RequestAddPackageAsync を使用し、それをボタン クリック ハンドラーにフックする方法を示します。 これにより、SmartScreen 要求 UI ウィンドウが呼び出されます。

public async void OnInstallNowClicked(object sender, RoutedEventArgs args)
{
    var packageManager = new PackageManager();
    DeploymentOperation result = await packageManager.RequestAddPackageAsync(
            this.currentPackageUri,
            null /*no dependencies*/,
            DeploymentOptions.None,
            null /*stage to default package volume*/,
            null /*no optional packages*/,
            null /*no external packages*/);

    if (result.ExtendedErrorCode != null)
    {
        if (result.ExtendedErrorCode.HResult == 0x80073d01)
        {
            // SmartScreen blocked the app installation.
        }
        else
        {
            // The app installation failed for another reason.
        }
    }
}

こちらもご覧ください

適用対象