Произошла ошибка при восстановлении пакетов NuGet: не удалось найти свойство MSBuildProjectExtensionsPath MSBuild для проекта Setup.wixproj. - PullRequest
0 голосов
/ 25 октября 2019

У нас есть устаревшее приложение, созданное более ранними версиями visual studio и wix. Последняя версия, с которой работал, это Visual Studio 2015. После использования VS2019 у нас начинают возникать проблемы при восстановлении пакетов: Произошла ошибка при восстановлении пакетов NuGet: Не удалось найти свойство MSBuildProjectExtensionsPath MSBuild для проекта Setup.wixproj

версияверсии Visual Studio WiX 3.11.4516.0: Visual Studio 2019 (16.3.6) Набор инструментов WiX Visual Studio Extension 1.0.0.4 В проектах используется .NET Framework 4.5.2

Когда я создаю новый проект wixsetup, яОбратите внимание, что макет отличается. Я пытался изменить свойства одно за другим, чтобы понять, какая из них была проблемой, но мне так и не удалось избавиться от ошибки

, вот мой wixproj

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">x64</Platform>
    <ProductVersion>3.0</ProductVersion>
    <ProjectGuid>{99f1ae14-c5d9-4153-b9be-d4e5d6da2a2c}</ProjectGuid>
    <SchemaVersion>2.0</SchemaVersion>
    <OutputName>Setup</OutputName>
    <OutputType>Package</OutputType>
    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
    <SccProjectName>SAK</SccProjectName>
    <SccProvider>SAK</SccProvider>
    <SccAuxPath>SAK</SccAuxPath>
    <SccLocalPath>SAK</SccLocalPath>
    <RunWixToolsOutOfProc>True</RunWixToolsOutOfProc>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
    <DefineConstants>Debug</DefineConstants>
    <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
    <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
    <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
    <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
    <SuppressAllWarnings>False</SuppressAllWarnings>
    <Pedantic>True</Pedantic>
  </PropertyGroup>
  <ItemGroup>
    <Compile Include="UI_InstallDir.wxs" />
    <Compile Include="Product.wxs" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\WindowsService1\WindowsService1.csproj">
      <Name>WindowsService1</Name>
      <Project>{720823ef-c775-4112-a906-b079ea977513}</Project>
      <Private>True</Private>
    </ProjectReference>
  </ItemGroup>
  <ItemGroup>
    <WixExtension Include="WixNetFxExtension">
      <HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
      <Name>WixNetFxExtension</Name>
    </WixExtension>
    <WixExtension Include="WixUtilExtension">
      <HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
      <Name>WixUtilExtension</Name>
    </WixExtension>
    <WixExtension Include="WixUIExtension">
      <HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
      <Name>WixUIExtension</Name>
    </WixExtension>
  </ItemGroup>
  <ItemGroup>
    <Folder Include="Images\" />
  </ItemGroup>
  <ItemGroup>
    <Content Include="Images\Banner.bmp" />
    <Content Include="Images\Dialog.bmp" />
    <Content Include="project.json" />
  </ItemGroup>
  <Import Project="$(WixTargetsPath)" />

</Project>

1 Ответ

0 голосов
/ 28 октября 2019

Я собираюсь ответить, опубликовав то, что я сделал, хотя я не уверен в механике: со времени MSBuild 15 (visual studio 2017) произошли некоторые критические изменения, и, похоже, команда Wix обновила свой формат шаблона Wixproj для поддержкиit: https://github.com/wixtoolset/issues/issues/5525 Мне нужно было только создать новый проект из нового шаблона (переместить мои элементы в проекты) и собрать. Похоже, сделать трюк.

...