Skip to content

packageManager.CreateCompositePackageCatalog(createOptions).Connect() returns CatalogError as status unless Microsoft.WindowsPackageManager.InProcCom >= 1.11.510 #5954

@BivinCBenny

Description

@BivinCBenny

Relevant area(s)

COM API

Relevant command(s)

No response

Brief description of your issue

Calling: packageManager.CreateCompositePackageCatalog(createOptions).Connect();

returns CatalogError when using CompositeSearchBehavior.LocalCatalogs (or any other catalog), unless
the application references Microsoft.WindowsPackageManager.InProcCom version 1.11.510 or higher.

Noticed this behavior appearing in the last 2–3 weeks without any code changes in my projects.

Steps to reproduce

using Microsoft.Management.Deployment;

static void Main(string[] args)
{
var packageManager = new PackageManager();

var createOptions = new CreateCompositePackageCatalogOptions
{
    CompositeSearchBehavior = CompositeSearchBehavior.LocalCatalogs
};

var packageCatalogs = packageManager.GetPackageCatalogs();
foreach (var cat in packageCatalogs)
{
    createOptions.Catalogs.Add(cat);
}

var compositeConnectResult =
    packageManager.CreateCompositePackageCatalog(createOptions).Connect();

// compositeConnectResult.Status == CatalogError

var options = new FindPackagesOptions();
var result = compositeConnectResult.PackageCatalog.FindPackages(options);  // This throws null exception

}

Expected behavior

packageManager.CreateCompositePackageCatalog(createOptions).Connect() should:

Behave consistently across supported InProcCom versions and not randomly stop working in older versions.

Actual behavior

Connect() returns CatalogError in older versions

Environment

Windows 10 or Windows 11 device

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-COM-APIIssue related to COM APIIssue-BugIt either shouldn't be doing this or needs an investigation.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions