Itt.SimpleMsixProj
2.0.0
<Sdk Name="Itt.SimpleMsixProj" Version="2.0.0" />
#:sdk Itt.SimpleMsixProj@2.0.0
Itt.SimpleMsixProj
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.
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 | 531 | 10/28/2023 |