Skip to content

Commit

Permalink
Release Fedora 39.0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
crramirez committed Nov 16, 2023
1 parent 8a7d8f9 commit ba39b98
Show file tree
Hide file tree
Showing 14 changed files with 120 additions and 62 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
39.0.1
* A new script, "install-desktop.sh", allows installing GNOME, KDE, XFCE, or LXDE Desktops Environments with minimal manual steps or configuration.
* Improved Windows Terminal Shell Integration with built-in support for "Opening new tabs in the same working directory" and
"Show marks for each command in the scrollbar," and by adding some actions in the settings.json file, "Automatically jump between commands," and "Select the entire output of a command."
* [FIX] After performing a Reset in App Settings, the distro can be installed again without reinstalling the app.
* [FIX] Now, if you configure Fedora Remix as your Default Profile in Windows Terminal, right-click a folder in File Explorer, and select Open in Terminal, it will correctly open in the desired directory.

39.0.0
* Upgraded to Fedora 39
Expand Down
40 changes: 37 additions & 3 deletions DistroLauncher/DistroLauncher.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,8 @@ fire_and_forget SyncBackground()
fire_and_forget ShowFedoraRemixUi()
{
// ReSharper disable once CppTooWideScope
const auto file =
// ReSharper disable once CppTooWideScopeInitStatement
const IStorageItem file =
co_await ApplicationData::Current().LocalFolder().TryGetItemAsync(L"MicrosoftStoreEngagementSDKId.txt");

if (!file)
Expand All @@ -187,6 +188,32 @@ fire_and_forget ShowFedoraRemixUi()
}
}

bool IsCurrentDirNotSystem32()
{
wchar_t system32Dir[MAX_PATH];
GetSystemDirectoryW(system32Dir, MAX_PATH);

wchar_t currentDir[MAX_PATH];
GetCurrentDirectoryW(MAX_PATH, currentDir);

return _wcsicmp(system32Dir, currentDir) != 0;
}

void CheckIfAResetWasMade()
{
const auto localStateFolder = ApplicationData::Current().LocalFolder();
const auto files = localStateFolder.GetFilesAsync().get();
const bool isLocalStateEmpty = files.Size() == 0;

if (!isLocalStateEmpty || !g_wslApi.WslIsDistributionRegistered())
{
return;
}

// ReSharper disable once CppExpressionWithoutSideEffects
g_wslApi.WslUnregisterDistribution();
}

int wmain(int argc, const wchar_t* argv[])
{
// Update the title bar of the console window.
Expand All @@ -212,6 +239,8 @@ int wmain(int argc, const wchar_t* argv[])
return exitCode;
}

CheckIfAResetWasMade();

// Install the distribution if it is not already.
const auto installOnly = arguments.size() > 0 && arguments[0] == ARG_INSTALL;
auto hr = S_OK;
Expand Down Expand Up @@ -247,7 +276,11 @@ int wmain(int argc, const wchar_t* argv[])

if (arguments.empty())
{
hr = g_wslApi.WslLaunchInteractive(L"", false, &exitCode);
/* If the current working dir is not System32 then it was called from Open with Terminal
option or from command line. In this case is better to start the distro in the current directory */
const bool useCurrentWorkingDirectory = IsCurrentDirNotSystem32();

hr = g_wslApi.WslLaunchInteractive(L"", useCurrentWorkingDirectory, &exitCode);

// Check exitCode to see if wsl.exe returned that it could not start the Linux process
// then prompt users for input so they can view the error message.
Expand Down Expand Up @@ -292,8 +325,9 @@ int wmain(int argc, const wchar_t* argv[])
}
else
{
// ReSharper disable once CppFunctionResultShouldBeUsed
Helpers::PrintMessage(MSG_USAGE);
return exitCode;
return static_cast<int>(exitCode);
}
}

Expand Down
11 changes: 6 additions & 5 deletions DistroLauncher/DistroLauncher.vcxproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props')" />
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
Expand All @@ -23,7 +23,7 @@
<ProjectGuid>{BA627106-E5F7-46EE-B8D7-2D5A760F2FB2}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>DistroLauncher</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion>10.0.22621.0</WindowsTargetPlatformVersion>
<ProjectName>Launcher</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
Expand Down Expand Up @@ -155,6 +155,7 @@
<ItemGroup>
<ClInclude Include="DistributionInfo.h" />
<ClInclude Include="Helpers.h" />
<ClInclude Include="messages.h" />
<ClInclude Include="resource.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="targetver.h" />
Expand Down Expand Up @@ -189,13 +190,13 @@
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets')" />
</ImportGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets'))" />
</Target>
</Project>
3 changes: 3 additions & 0 deletions DistroLauncher/DistroLauncher.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@
<ClInclude Include="Helpers.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="messages.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="DistroLauncher.cpp">
Expand Down
49 changes: 31 additions & 18 deletions DistroLauncher/WslApiLoader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,13 @@
WslApiLoader::WslApiLoader(const std::wstring& distributionName) :
_distributionName(distributionName)
{
_wslApiDll = LoadLibraryEx(L"wslapi.dll", nullptr, LOAD_LIBRARY_SEARCH_SYSTEM32);
_wslApiDll = LoadLibraryExW(L"wslapi.dll", nullptr, LOAD_LIBRARY_SEARCH_SYSTEM32);
if (_wslApiDll != nullptr)
{
_isDistributionRegistered = (WSL_IS_DISTRIBUTION_REGISTERED)GetProcAddress(
_wslApiDll, "WslIsDistributionRegistered");
_registerDistribution = (WSL_REGISTER_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslRegisterDistribution");
_unRegisterDistribution = (WSL_UN_REGISTER_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslUnregisterDistribution");
_configureDistribution = (WSL_CONFIGURE_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslConfigureDistribution");
_launchInteractive = (WSL_LAUNCH_INTERACTIVE)GetProcAddress(_wslApiDll, "WslLaunchInteractive");
_launch = (WSL_LAUNCH)GetProcAddress(_wslApiDll, "WslLaunch");
Expand All @@ -29,24 +30,24 @@ WslApiLoader::~WslApiLoader()
}
}

BOOL WslApiLoader::WslIsOptionalComponentInstalled() const
BOOL WslApiLoader::WslIsOptionalComponentInstalled()
{
return ((_wslApiDll != nullptr) &&
(_isDistributionRegistered != nullptr) &&
(_registerDistribution != nullptr) &&
(_configureDistribution != nullptr) &&
(_launchInteractive != nullptr) &&
(_launch != nullptr));
return _wslApiDll != nullptr &&
_isDistributionRegistered != nullptr &&
_registerDistribution != nullptr &&
_configureDistribution != nullptr &&
_launchInteractive != nullptr &&
_launch != nullptr;
}

BOOL WslApiLoader::WslIsDistributionRegistered() const
BOOL WslApiLoader::WslIsDistributionRegistered()
{
return _isDistributionRegistered(_distributionName.c_str());
}

HRESULT WslApiLoader::WslRegisterDistribution() const
HRESULT WslApiLoader::WslRegisterDistribution()
{
const auto hr = _registerDistribution(_distributionName.c_str(), L"install.tar.gz");
const HRESULT hr = _registerDistribution(_distributionName.c_str(), L"install.tar.gz");
if (FAILED(hr))
{
Helpers::PrintMessage(MSG_WSL_REGISTER_DISTRIBUTION_FAILED, hr);
Expand All @@ -55,9 +56,21 @@ HRESULT WslApiLoader::WslRegisterDistribution() const
return hr;
}

HRESULT WslApiLoader::WslConfigureDistribution(ULONG defaultUID, WSL_DISTRIBUTION_FLAGS wslDistributionFlags) const
HRESULT WslApiLoader::WslUnregisterDistribution() const
{
const auto hr = _configureDistribution(_distributionName.c_str(), defaultUID, wslDistributionFlags);
const auto hr = _unRegisterDistribution(_distributionName.c_str());
if (FAILED(hr))
{
wprintf(L"failed");
Helpers::PrintMessage(MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED, hr);
}

return hr;
}

HRESULT WslApiLoader::WslConfigureDistribution(ULONG defaultUID, WSL_DISTRIBUTION_FLAGS wslDistributionFlags)
{
const HRESULT hr = _configureDistribution(_distributionName.c_str(), defaultUID, wslDistributionFlags);
if (FAILED(hr))
{
Helpers::PrintMessage(MSG_WSL_CONFIGURE_DISTRIBUTION_FAILED, hr);
Expand All @@ -66,9 +79,9 @@ HRESULT WslApiLoader::WslConfigureDistribution(ULONG defaultUID, WSL_DISTRIBUTIO
return hr;
}

HRESULT WslApiLoader::WslLaunchInteractive(PCWSTR command, BOOL useCurrentWorkingDirectory, DWORD* exitCode) const
HRESULT WslApiLoader::WslLaunchInteractive(PCWSTR command, BOOL useCurrentWorkingDirectory, DWORD* exitCode)
{
const auto hr = _launchInteractive(_distributionName.c_str(), command, useCurrentWorkingDirectory, exitCode);
const HRESULT hr = _launchInteractive(_distributionName.c_str(), command, useCurrentWorkingDirectory, exitCode);
if (FAILED(hr))
{
Helpers::PrintMessage(MSG_WSL_LAUNCH_INTERACTIVE_FAILED, command, hr);
Expand All @@ -78,10 +91,10 @@ HRESULT WslApiLoader::WslLaunchInteractive(PCWSTR command, BOOL useCurrentWorkin
}

HRESULT WslApiLoader::WslLaunch(PCWSTR command, BOOL useCurrentWorkingDirectory, HANDLE stdIn, HANDLE stdOut,
HANDLE stdErr, HANDLE* process) const
HANDLE stdErr, HANDLE* process)
{
const auto hr = _launch(_distributionName.c_str(), command, useCurrentWorkingDirectory, stdIn, stdOut, stdErr,
process);
const HRESULT hr = _launch(_distributionName.c_str(), command, useCurrentWorkingDirectory, stdIn, stdOut, stdErr,
process);
if (FAILED(hr))
{
Helpers::PrintMessage(MSG_WSL_LAUNCH_FAILED, command, hr);
Expand Down
16 changes: 10 additions & 6 deletions DistroLauncher/WslApiLoader.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

using WSL_IS_DISTRIBUTION_REGISTERED = BOOL(STDAPICALLTYPE*)(PCWSTR);
using WSL_REGISTER_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR, PCWSTR);
using WSL_UN_REGISTER_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR);
using WSL_CONFIGURE_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR, ULONG, WSL_DISTRIBUTION_FLAGS);
using WSL_GET_DISTRIBUTION_CONFIGURATION = HRESULT(STDAPICALLTYPE*)(PCWSTR, ULONG*, ULONG*, WSL_DISTRIBUTION_FLAGS*,
PSTR**, ULONG*);
Expand All @@ -25,31 +26,34 @@ class WslApiLoader
WslApiLoader(const std::wstring& distributionName);
~WslApiLoader();

BOOL WslIsOptionalComponentInstalled() const;
BOOL WslIsOptionalComponentInstalled();

BOOL WslIsDistributionRegistered() const;
BOOL WslIsDistributionRegistered();

HRESULT WslRegisterDistribution() const;
HRESULT WslRegisterDistribution();

HRESULT WslUnregisterDistribution() const;

HRESULT WslConfigureDistribution(ULONG defaultUID,
WSL_DISTRIBUTION_FLAGS wslDistributionFlags) const;
WSL_DISTRIBUTION_FLAGS wslDistributionFlags);

HRESULT WslLaunchInteractive(PCWSTR command,
BOOL useCurrentWorkingDirectory,
DWORD* exitCode) const;
DWORD* exitCode);

HRESULT WslLaunch(PCWSTR command,
BOOL useCurrentWorkingDirectory,
HANDLE stdIn,
HANDLE stdOut,
HANDLE stdErr,
HANDLE* process) const;
HANDLE* process);

private:
std::wstring _distributionName;
HMODULE _wslApiDll;
WSL_IS_DISTRIBUTION_REGISTERED _isDistributionRegistered;
WSL_REGISTER_DISTRIBUTION _registerDistribution;
WSL_UN_REGISTER_DISTRIBUTION _unRegisterDistribution;
WSL_CONFIGURE_DISTRIBUTION _configureDistribution;
WSL_LAUNCH_INTERACTIVE _launchInteractive;
WSL_LAUNCH _launch;
Expand Down
5 changes: 5 additions & 0 deletions DistroLauncher/messages.mc
Original file line number Diff line number Diff line change
Expand Up @@ -108,3 +108,8 @@ Language=English
Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.
For information please visit https://aka.ms/enablevirtualization
.
MessageId=1017 SymbolicName=MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED
Language=English
WslUnRegisterDistribution failed with error: 0x%1!x!
.
2 changes: 1 addition & 1 deletion DistroLauncher/packages.config
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Windows.CppWinRT" version="2.0.230225.1" targetFramework="native" />
<package id="Microsoft.Windows.CppWinRT" version="2.0.230706.1" targetFramework="native" />
</packages>
4 changes: 4 additions & 0 deletions DistroLauncher/stdafx.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@
#include <vector>
#include <Windows.h>
#include <wslapi.h>

#include <winrt/Windows.Foundation.h>
#include <winrt/Windows.Foundation.Collections.h>

#include "DistributionInfo.h"
#include "Helpers.h"
#include "WslApiLoader.h"
Expand Down
2 changes: 1 addition & 1 deletion Fedora-Remix-for-WSL-SL/Package.appxmanifest
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<Identity
Name="WhitewaterFoundryLtd.Co.FedoraRemixforWSLSL"
Publisher="CN=&quot;Whitewater Foundry, Ltd. Co.&quot;, O=&quot;Whitewater Foundry, Ltd. Co.&quot;, STREET=233 12th Street, L=Columbus, S=Georgia, PostalCode=31901, C=US"
Version="39.0.0.0"/>
Version="39.0.1.0"/>

<Properties>
<DisplayName>Fedora Remix for WSL</DisplayName>
Expand Down
2 changes: 1 addition & 1 deletion Fedora-Remix-for-WSL/Package.appxmanifest
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<Identity
Name="WhitewaterFoundryLtd.Co.FedoraRemixforWSL"
Publisher="CN=9879127B-9E92-4DE5-9C32-0B1F09F95DCF"
Version="39.0.0.0"/>
Version="39.0.1.0"/>

<Properties>
<DisplayName>Fedora Remix for WSL</DisplayName>
Expand Down
12 changes: 6 additions & 6 deletions FedoraRemixWSLUI/FedoraRemixWSLUI.vcxproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props')" />
<PropertyGroup Label="Globals">
<CppWinRTOptimized>true</CppWinRTOptimized>
<CppWinRTRootNamespaceAutoMerge>true</CppWinRTRootNamespaceAutoMerge>
Expand Down Expand Up @@ -161,15 +161,15 @@
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\packages\Microsoft.Services.Store.Engagement.10.1901.28001\build\Microsoft.Services.Store.Engagement.targets" Condition="Exists('..\packages\Microsoft.Services.Store.Engagement.10.1901.28001\build\Microsoft.Services.Store.Engagement.targets')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets')" />
<Import Project="..\packages\Microsoft.Services.Store.Engagement.10.2307.3001\build\Microsoft.Services.Store.Engagement.targets" Condition="Exists('..\packages\Microsoft.Services.Store.Engagement.10.2307.3001\build\Microsoft.Services.Store.Engagement.targets')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets')" />
</ImportGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Microsoft.Services.Store.Engagement.10.1901.28001\build\Microsoft.Services.Store.Engagement.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Services.Store.Engagement.10.1901.28001\build\Microsoft.Services.Store.Engagement.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230225.1\build\native\Microsoft.Windows.CppWinRT.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Services.Store.Engagement.10.2307.3001\build\Microsoft.Services.Store.Engagement.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Services.Store.Engagement.10.2307.3001\build\Microsoft.Services.Store.Engagement.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.230706.1\build\native\Microsoft.Windows.CppWinRT.targets'))" />
</Target>
</Project>
Loading

0 comments on commit ba39b98

Please sign in to comment.