Giter VIP home page Giter VIP logo

Comments (6)

DarranRowe avatar DarranRowe commented on June 12, 2024

Was it just C++/WinRT that changed?
I ask this because C++/WinRT isn't responsible for the generation of any of the files involved in XamlTypeInfo. The way the build process works is:

  1. Midl compiles the .idl files into the individual .winmd files. You can find these in $(IntDir)\Unmerged.

Screenshot 2024-03-21 153453

  1. Mdmerge merges these individual .winmd files into the application combined .winmd file. So it reads the files from $(IntDir)\Unmerged and writes to $(IntDir)\Merged\$(RootNamespace).winmd.

Screenshot 2024-03-21 153747

  1. It copies this merged .winmd file to $(OutDir).

  2. Cppwinrt runs for the first time. This run generates the basic platform headers. These are stored in $(ProjectDir)\Generated Files\winrt.

  3. Cppwinrt runs for the second time. This run generates additional platform headers, this would include SDK references. These are stored in the same place.

  4. Cppwinrt runs for the third time. This run reads the application .winmd files and produces the component headers and implementation source. These are stored in the same place. This means that C++/WinRT is responsible for reading the .winmd file and generating .h files under $(ProjectDir)\Generated Files\winrt.

  5. The first Xaml Compiler pass runs. This reads the various .winmd files and produces some header and source files under $(ProjectDir)\Generated Files.

  6. The second Xaml Compiler pass runs. This reads the various .winmd files and the state from the first pass and produces the remaining source files, this is when XamlTypeInfo.cpp should be generated.

So I could understand an update to the Windows App SDK package causing this, since that is what contains the Xaml Compiler. But an update to C++/WinRT shouldn't cause this.

from microsoft-ui-xaml.

kennykerr avatar kennykerr commented on June 12, 2024

Possibly related: microsoft/cppwinrt#1397

from microsoft-ui-xaml.

Scottj1s avatar Scottj1s commented on June 12, 2024

@takatsuka2022 Can you share a repro project?

from microsoft-ui-xaml.

takatsuka2022 avatar takatsuka2022 commented on June 12, 2024

We have created a test pro. We have also confirmed that the solution builds successfully and is executable by reverting the CppWinRT version back to 2.0.230706.1.
ControlLib 2.zip

from microsoft-ui-xaml.

Scottj1s avatar Scottj1s commented on June 12, 2024

@takatsuka2022 thank you for the repro. A fix has been made to CppWinRT: microsoft/cppwinrt#1404

from microsoft-ui-xaml.

Scottj1s avatar Scottj1s commented on June 12, 2024

Fix has been published: https://www.nuget.org/packages/Microsoft.Windows.CppWinRT/2.0.240405.15

from microsoft-ui-xaml.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.