<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="..\..\Version.props" />
  <PropertyGroup>
    <AssemblyTitle>PowerToysInterop</AssemblyTitle>
    <AssemblyCompany>Microsoft Corp.</AssemblyCompany>
    <AssemblyCopyright>Copyright (C) 2019 Microsoft Corp.</AssemblyCopyright>
  </PropertyGroup>
  <PropertyGroup Label="Globals">
    <VCProjectVersion>16.0</VCProjectVersion>
    <ProjectGuid>{F055103B-F80B-4D0C-BF48-057C55620033}</ProjectGuid>
    <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
    <Keyword>ManagedCProj</Keyword>
    <RootNamespace>PowerToysInterop</RootNamespace>
    <ProjectName>PowerToysInterop</ProjectName>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Label="Configuration">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <CLRSupport>true</CLRSupport>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Label="Shared">
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup>
    <TargetName>PowerToysInterop</TargetName>
    <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
  </PropertyGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
    <ClCompile>
      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
    <ClCompile>
      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <PrecompiledHeader>NotUsing</PrecompiledHeader>
      <AdditionalIncludeDirectories>$(SolutionDir)src\common\interop;../../;../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <OmitDefaultLibName>false</OmitDefaultLibName>
      <AdditionalOptions>/Zc:twoPhase- </AdditionalOptions>
      <LanguageStandard>stdcpp17</LanguageStandard>
    </ClCompile>
    <Link>
      <AdditionalDependencies>WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup>
    <AssemblyVersionFiles Include="Generated Files\AssemblyInfo.cpp" />
  </ItemGroup>
  <Target Name="GenerateAssemblyInfo" BeforeTargets="PrepareForBuild">
    <ItemGroup>
      <HeaderLines Include="#include &quot;../pch.h&quot;" />
      <HeaderLines Include="using namespace System%3b" />
      <HeaderLines Include="using namespace System::Reflection%3b" />
      <HeaderLines Include="using namespace System::Runtime::CompilerServices%3b" />
      <HeaderLines Include="using namespace System::Runtime::InteropServices%3b" />
      <HeaderLines Include="using namespace System::Security::Permissions%3b" />
      <HeaderLines Include="[assembly: AssemblyTitleAttribute(L&quot;$(AssemblyTitle)&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyDescriptionAttribute(&quot;&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyConfigurationAttribute(&quot;&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyCompanyAttribute(&quot;$(AssemblyCompany)&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyCopyrightAttribute(&quot;$(AssemblyCopyright)&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyProductAttribute(&quot;$(AssemblyTitle)&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyTrademarkAttribute(&quot;&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyCultureAttribute(&quot;&quot;)]%3b" />
      <HeaderLines Include="[assembly: AssemblyVersionAttribute(&quot;$(Version).0&quot;)]%3b" />
      <HeaderLines Include="[assembly: ComVisible(false)]%3b" />
      <HeaderLines Include="[assembly:CLSCompliantAttribute(true)]%3b" />
    </ItemGroup>
    <WriteLinesToFile File="Generated Files\AssemblyInfo.cpp" Lines="@(HeaderLines)" Overwrite="true" Encoding="Unicode" WriteOnlyWhenDifferent="true" />
  </Target>
  <ItemGroup>
    <ClInclude Include="HotkeyManager.h" />
    <ClInclude Include="interop.h" />
    <ClInclude Include="KeyboardHook.h" />
    <ClInclude Include="os-detect.h" />
    <ClInclude Include="pch.h" />
    <ClInclude Include="resource.h" />
  </ItemGroup>
  <ItemGroup>
    <ClCompile Include="Generated Files\AssemblyInfo.cpp" />
    <ClCompile Include="HotkeyManager.cpp" />
    <ClCompile Include="interop.cpp" />
    <ClCompile Include="KeyboardHook.cpp" />
    <ClCompile Include="keyboard_layout.cpp">
      <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</CompileAsManaged>
      <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</CompileAsManaged>
    </ClCompile>
    <ClCompile Include="two_way_pipe_message_ipc.cpp">
      <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</CompileAsManaged>
      <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</CompileAsManaged>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ResourceCompile Include="interop.rc" />
  </ItemGroup>
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <ImportGroup Label="ExtensionTargets">
  </ImportGroup>
</Project>