Skip to content

[BUG] makemsix pack: msix does not exist. #676

@SlyCedix

Description

@SlyCedix

Project
MSIX SDK

Describe the bug
When attempting to run makemsix pack -d **REDACTED** -p out.msix on windows the following error occurs:

file: \\?\C:\Users\**REDACTED**\Debug\net9.0\out.msix does not exist.
Call failed in C:\Users\**REDACTED**\msix-packaging\src\inc\internal\FileStream.hpp on line 26

The error even occurs if I make an empty out.msix file before running makemsix pack

It looks like it is attempting to read the output file and then throwing an exception when it doesn't exist yet. Which is odd considering it's supposed to be the output of the program.

To Reproduce
Steps to reproduce the behavior:

  1. Build makemsix with ./makewin.cmd x64 --pack (also observed on x86)
  2. Create an AppxManifest.xml file:
<?xml version="1.0" encoding="utf-8"?>
<Package
    xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
    xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
    xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
    xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10">
    <Identity Name="**REDACTED**"
              Version="1.0.0.0"
              Publisher="CN=**REDACTED**"
              ProcessorArchitecture="x64"/>
    <Properties>
        <DisplayName>**REDACTED**e</DisplayName>
        <PublisherDisplayName>**REDACTED**</PublisherDisplayName>
        <Description>**REDACTED**</Description>
        <Logo>logo.png</Logo>
    </Properties>
    <Resources>
        <Resource Language="en-us"/>
    </Resources>
    <Dependencies>
        <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14316.0"
                            MaxVersionTested="10.0.22631.4751"/>
    </Dependencies>
    <Capabilities>
        <rescap:Capability Name="runFullTrust"/>
    </Capabilities>
    <Applications>
        <Application Id="**REDACTED**"
                     Executable="**REDACTED**.exe"
                     uap10:RuntimeBehavior="packagedClassicApp"
                     uap10:TrustLevel="mediumIL">
            <uap:VisualElements DisplayName="**REDACTED**"
                                Description="**REDACTED**"
                                Square150x150Logo="logo.png"
                                Square44x44Logo="logo-small.png"
                                BackgroundColor="#464646"/>
        </Application>
    </Applications>
</Package>
  1. Run makemsix pack -d AppxDir -p out.msix

Expected behavior
No error occurs and the msix is successfully created

Platform
Windows

Additional context
I'm using makemsix instead of makeappx because my eventual goal is to get this building entirely in a Debian environment for continuous deployment, but doing initial testing on windows. I was able to build an msix file in my linux environment, but I just got "Error in parsing the app package." when I tried to install it in my windows environment.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Needs-TriageIssue needs to be triaged by a member of the core team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions