Clear absolute AdditionalIncludeDirectories entries referencing D:\GitHub\App-Installer-For-Windows-8.x-Reset\packages\pugixml.1.15.0\build\native\include\ in pkgread/pkgread.vcxproj across multiple build configurations. This removes a machine-specific include path to improve portability and avoid build failures on other systems; include dirs should be provided via package restore or configured with relative paths or project properties.
Remove an unnecessary #include <minwindef.h> from pkgread/typestrans.h and perform minor whitespace cleanups in desktopini/main.cpp and pkgread/dllmain.cpp. Update notes/symlinks.md to explain that appxinfo.h and main.cpp now use #include "../<ProjectName>/<ProjectName>.h", so the previous symbolic links are no longer required. These are non-functional cleanup and documentation updates.
Add ArmDesktopSdk.props and a Directory.Build.props to force-import ARM desktop SDK settings (WindowsSDKDesktopARMSupport and centralized handling of the ARM desktop preprocessor define). Remove x64-specific configurations, property sheets and duplicated ARM preprocessor definitions from multiple .vcxproj files to simplify supported platforms. Update pkgread to use package-based pugixml library paths and set TreatWChar_tAsBuiltInType, and tweak solution configuration entries in AppInstallerReset.sln.
Add a new pugixml static library project and include it in the solution to support ARM builds. pkgread now references the new pugixml project (removed direct pugixml file/includes) and its Release|ARM PrecompiledHeader is set to NotUsing. Update solution configurations to include pugixml and add appropriate build platform mappings. Update notes/symlinks.md with instructions for the new project and manual copying of generated pugixml.lib; also clear an AdditionalLibraryDirectories entry in priformatcli.
Add _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1 to PreprocessorDefinitions in multiple .vcxproj files so ARM desktop SDK partition is available at project level. Remove per-file #ifdef _M_ARM defines from several headers and source files (Stdafx.h, targetver.h, main.cpp across various modules) to avoid duplication. Also add ShowIncludes=false in pkgread.vcxproj. This centralizes the ARM macro for consistent ARM builds across modules.
Add notes/symlinks.md documenting required symbolic links for the appinstaller and shared directories, plus guidance for creating symlinks in Debug/Release and including shared subdirs in releases. Update pkgread project and its filters to use a relative path for pugixml.cpp (..\packages\pugixml.1.15.0\...) instead of an absolute user-specific NuGet path so the project is portable and includes pugixml.cpp needed to resolve linker errors for non-x86 builds (e.g. ARM).
Upgrade solution to Visual Studio 17 and add ARM build configurations across projects. Several .vcxproj files were updated to include Debug/Release|ARM property groups, property sheet imports and LinkIncremental settings; platform toolset set for ARM configs where appropriate. A new pugixml_arm project and its sources/filters were added. Also added ExtensibilityGlobals (SolutionGuid) to the .sln.