Itt.SimpleMsixProj 2.0.0

<Sdk Name="Itt.SimpleMsixProj" Version="2.0.0" />
For projects that support Sdk, copy this XML node into the project file to reference the package.

Itt.SimpleMsixProj

Nuget

Provides targets for a project which generates an msix using makeappx and dotnet publish.

Usage

Add a setup project with a .msbuildproj or .proj:

<Project Sdk="Itt.SimpleMsixProj/2.0.0">
    <PropertyGroup>
        <TargetFramework>net7</TargetFramework>
        <SigntoolPfx>codesign_123.pfx</SigntoolPfx>
        <SigntoolPassword>123</SigntoolPassword>
    </PropertyGroup>

    <ItemGroup>
        <PublishProject Include="..\Itp.AmazonConnect.DesktopClient\Itp.AmazonConnect.DesktopClient.csproj" />
        <PublishProject Include="..\Itp.AmazonConnect.HidCallControl\Itp.AmazonConnect.HidCallControl.csproj">
            <PackagePath>Modules\Itp.AmazonConnect.HidCallControl\</PackagePath>
        </PublishProject>
        <PublishProject Include="..\Itp.AmazonConnect.InfluxDbPush\Itp.AmazonConnect.InfluxDbPush.csproj">
            <PackagePath>Modules\Itp.AmazonConnect.InfluxDbPush\</PackagePath>
        </PublishProject>
        <PublishProject Include="..\Itp.AmazonConnect.LdapContactsUI\Itp.AmazonConnect.LdapContactsUI.csproj">
            <PackagePath>Modules\Itp.AmazonConnect.LdapContactsUI\</PackagePath>
        </PublishProject>
        <PublishProject Include="..\Itp.AmazonConnect.RingAll\Itp.AmazonConnect.RingAll.csproj">
            <PackagePath>Modules\Itp.AmazonConnect.RingAll\</PackagePath>
        </PublishProject>
    </ItemGroup>
</Project>

Add an AppxManifest.xml and Assets folder. See SampleApp.Setup for example project. Build and find the msix in the output folder.

Items

Loose files may be added in the Assets folder. These will be copied to the Assets folder in the msix. Files can be added to arbitrary paths with OtherAsset item.

<ItemGroup>
    <OtherAsset Include="license.txt" />
</ItemGroup>

Projects may be published into the package using PublishProject. By default, the referenced project will deploy to the root of the package. If PackagePath is specified, the project will be in the specified path within the project.

<ItemGroup>
	<PublishProject Include="..\Itp.AmazonConnect.InfluxDbPush\Itp.AmazonConnect.InfluxDbPush.csproj">
		<PackagePath>Modules\Itp.AmazonConnect.InfluxDbPush\</PackagePath>
	</PublishProject>
</ItemGroup>

By default, the the publish will occur using framework-dependent deployment for win-x86. This can be changed using the project properties RuntimeIdentifier and PublishCommandOptions.

<PropertyGroup>
    <TargetFramework>net7</TargetFramework>
    <RuntimeIdentifier>win-arm</RuntimeIdentifier>
    <PublishCommandOptions>--self-contained true</PublishCommandOptions>
</PropertyGroup>

Individual projects can have additional properties passed to dotnet publish using PublishOptions metadata on PublishProject:

<ItemGroup>
	<PublishProject Include="..\Itp.AmazonConnect.InfluxDbPush\Itp.AmazonConnect.InfluxDbPush.csproj">
		<PackagePath>Modules\Itp.AmazonConnect.InfluxDbPush\</PackagePath>
		<PublishOptions>-p Version=1.2.3</PublishOptions>
	</PublishProject>
</ItemGroup>

Signing

If a PFX and password are specified as <SigntoolPfx> and <SigntoolPassword> then the msix will be signed. The /Package/Identity/@Publisher must match the subject of the PFX for signing to succeed.

Signing is not performed when building in Configuration=Release. It is recommended to use a tool like the Windows Store or msixhero for release singing.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • net7.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0 298 10/28/2023