mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-15 19:27:56 +01:00
* Import Image Resizer for Windows * getting code analysis and stylecop hooked in * upgrading to 4.7.2 * adding copyright * getting stuff to work headers and trailing commas adding braces updated encoder * Revert "getting stuff to work" This reverts commit5310866120. * update to .net 4.7.2 * access modifier * zero errors * Fixed unit tests not running issue * Fixed ImageResizer.Test stylecop warning * Formatted ShellExtensions project with clang-format * Fixed annotation warnings * Suppressed 6031 and 26812 warnings for specific lines * Shifting ImageResizer projects to PowerToys solution (#1054) * Shifted ImageResizer projects to PowerToys solution: Builds, all tests pass, ImageResizer C# project works independently * Deleted extra files * Deleted nuget config file and fixed code analysis paths * Convert ImageResizer to a PowerToy (#1073) * Updated vcxproj file with common project references and cpp version flags * Added module template code to dllmain and updated headers for successful build * Removed unnecessary include * Added dll to runner and add fixes to show up in PT Settings * Added settings file * Added support for enabling/disabling based on PowerRename codebase * Fixed missing braces * Fixed call_custom_action * Add ImageResizer to msi installer (dev/imageResizer) (#1094) * Updated vcxproj file with common project references and cpp version flags * Added module template code to dllmain and updated headers for successful build * Removed unnecessary include * Added dll to runner and add fixes to show up in PT Settings * Added settings file * Added support for enabling/disabling based on PowerRename codebase * Fixed solution file configurations * Removed Any CPU from ImageResizer csprojs * Renamed registry writing and removed build time registry addition * Added ImageResizer installation details to msi * Fixed comment on conditions to close explorer.exe * Sync dev/imageResizer with master (#1105) * tweaking language * adjusting elevated permission verbiage to match Windows * npm audit fix to update stuff * slight bump for fabric ui * Remove unwanted files (#1037) Add temp build files to gitignore * Ensure previous search and replace texts are evaluated and updated in the UI at startup (#1043) Ensure stored settings get evaluated after initial enumeration There was a bug where the list view was not getting updated with the results of the search and replace on launch when we are using a stored search or replace text from a previous session. * adding fancy zone opacity setting, enhancement #631 (#1008) * adding fancy zone opacity setting, enhancement #631 * applying zone opacity setting to all zones during zone selection * changing opacity setting to percentage * runner: show message box when restarting with different elevation fails (#1061) Also make the message box appear on top of the settings window. * Fix misaligned display of zones in layout priview and grid editor (#1010) Fix misaligned display of zones in layout preview and grid editor * MSIX: Extract MSIX building functionality from msix_reinstall.ps1 to a separate script (#1068) * MSIX: label PowerToys as Preview (#1090) * MSIX: Code sign msixbundle (#1093) * Update to MSIX README.md (#1095) * Update README.md few adjustments * Update README.md * Update README.md * adding in privacy statement, removing About in dialog (#1087) * adding in privacy statement, removing About in dialog * added Preview * Revert "Fix misaligned display of zones in layout priview and grid editor (#1010)" (#1097) This reverts commitd03690cffd. * Fix reversed order of zones in layout (#1071) * Shifted three functions to common (#1101) Co-authored-by: Clint Rutkas <clint@rutkas.com> Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com> Co-authored-by: Chris Davis <chrisdavis@outlook.com> Co-authored-by: Yosef Durr <yodurr@microsoft.com> Co-authored-by: Bartosz Sosnowski <bzoz@users.noreply.github.com> Co-authored-by: vldmr11080 <57061786+vldmr11080@users.noreply.github.com> Co-authored-by: yuyoyuppe <yuyoyuppe@users.noreply.github.com> * Revert "Sync dev/imageResizer with master (#1105)" This reverts commitdb7f15541f. * Added icon to Resize pictures context menu entry (dev/imageResizer) (#1113) * Updated vcxproj file with common project references and cpp version flags * Added module template code to dllmain and updated headers for successful build * Removed unnecessary include * Added dll to runner and add fixes to show up in PT Settings * Added settings file * Added support for enabling/disabling based on PowerRename codebase * Fixed solution file configurations * Removed Any CPU from ImageResizer csprojs * Renamed registry writing and removed build time registry addition * Added ImageResizer installation details to msi * Shifted to MII, TODO: Fix position * Incorporated ImageResizer Icon in context menu entry * Fixed typo * Merged with dev/imageResizer * Renamed Advanced Options to Settings and removed About tab (dev/imageResizer) (#1123) * Removed about tab, renamed advanced opt to settings, changed assembly info * Restored Resource designer file * Reverted changes on AssemblyInfo * MSI: Fix ImageResizer menu item position (dev/imageResizer) (#1114) * Updated vcxproj file with common project references and cpp version flags * Added module template code to dllmain and updated headers for successful build * Removed unnecessary include * Added dll to runner and add fixes to show up in PT Settings * Added settings file * Added support for enabling/disabling based on PowerRename codebase * Fixed solution file configurations * Removed Any CPU from ImageResizer csprojs * Renamed registry writing and removed build time registry addition * Added ImageResizer installation details to msi * Shifted to MII, TODO: Fix position * Incorporated ImageResizer Icon in context menu entry * Changed registry entries to SystemFileAssociations and added index changes in InsertMenuItem * Fixed extra newline * Fixed merge conflict * Refactor ImageResizer code base naming to match PowerRename (#1121) * Created empty README file * Renamed dll project * Removed ShellExtensions references in src * Fixed ImageResizerUI assembly name and added changes to MSI * added the helper functions * localized dllmain powerrename * localized powerRenameExt * localized the settings file * built the proj * Modified resourceIDs for strings in the table * added common as a reference project * Removed get_res_string_wchar and used the get_resource_string() function instead which returns a wstring typecast into wchar* * Added new lines to the end of the file * Removed string resources from the settings.cpp file * rebuilt project PowerRename * moved app name to constructor to init only once * updated formatting of common.cpp * reverting formatting of files * Removed some IDs from resource file. Changed SHIFT to Shift * Localizing C# Project of FancyZones (FancyZonesEditor) (#199) (#1122) * removed hardcoded strings from CanvasEditorWindow.xaml * removed hardcoded strings from GridEditorWindow.xaml * loc * Localized MainWindow * reverting MainWindow.xaml as it is not rendering the window as expected * Changed the resource settings from internal to public * the culture is set based on the culture of the system UI set in the system settings * Removed the french resource files used for testing * Localized canvasWindow and mainwindow * Removed setting the UI culture explicitly as it would be implicitly set to the culture of system UI * Removed redundant header file * Localize the Shortcut guide PowerToy (#199) (#1126) * Localized shortcut_guide.cpp * localized overlay_window.cpp * formatting changes * Localize overlay window * removed the README link from the set of localized resources * Typo: changed upper to lower * Localize C++ Projects of FancyZones (#1130) * localized dllmain.cpp of fancyzones project * localized FancyZones.cpp * format fancyzones.rc file * Moved SuperFancyZones back to being a string instead of having it in the resource file as it is the window class name * reverted changes for window name * Formatted fancyzones rc file * Align zone dimensions from layout preview with those from grid editor (#1115) * MSIX: add a dedicated .rc for UWPUI which joins both UI and DLL .rc's (#1139) * Runner: fix restarting with same elevation (#1133) * MSIX: reinstall script uses bundle instead of .msi to be able to reinstall in all cases * Telemetry: add WebView init failure errors * Settings: initialize COM security to allow communication between elevated Settings and WebView * Common: implement on_scope_exit helper and typed_storage * Changes for #1140 and #569 (#1152) * MSIX build instructions adjustmnet (#1170) * MSIX: hide the "Run at Startup" option if running as packaged * MSIX: update identity name and publisher (#1176) * Runner: fix startup task state setting for MSIX (#1181) * Add ImageResizer to MSIX installer and make the code MSIX-compatible (#1219) * Removed ImageResizer.exe location registry key * Added working resize pictures to MSIX context menu without icon * Fixed missing icon on MSIX build * Added comments * Changed to single context handler entry * Made changes as per PR comments * Localize ImageResizer (#1261) * Removed hardcoded strings * Added resource dlls to MSIX installer * Save ImageResizer settings in JSON format (#1258) * Combined settings files * Added JSON settings functionality in PowerToys format with thread safety * Reverting changes to csproj file * Removed settings.settings and designer file and added target sdk tools to fix warning * Added NewtonSoft Json package * Added 3 tests * Added propertychanged test * Removed unused libraries * Removed additional allocation statements in test * Added comments on test * Added one-time setup code * Added Newtonsoft.Json.dll to MSI and MSIX installer * Fixed copyright header * Fixed folder location in MSIX * Renamed jsonMutex to _jsonMutex * Fixed line endings * Created private setup functions and added Arrange, Act, Assert comments * Created private setup functions and added Arrange, Act, Assert comments * Suppressed copyright warning on AppFixture and enabled treat warnings as errors * Added comments on Reload/AppFixture and added constructor andispose * Added telemetry to ImageResizer Shell Extension code (dev/imageResizer) (#1272) * Added telemetry to C++ ImageResizerExt * Added Register and unregister calls * Changed default enable setting * Set startup location to center of the screen (ImageResizer) (#1452) * Added ImageResizer resources.dlls to the MSI installer (#1448) * Implemented fix for foreground issue for ImageResizer (#1434) * Fixed conflict in installer README.md file * Fixed conflict in bundle.js * Auto-generate AssemblyInfo in ImageResizer (#1467) * Updated assembly info * Added auto-generation of AssemblyInfo.cs * Fixed minor issues * Remove the License file since Notice.md have been added * Fix errors due to resolving merge conflicts Co-authored-by: Brice Lambson <brice@bricelam.net> Co-authored-by: Clint Rutkas <clint@rutkas.com> Co-authored-by: Arjun Balgovind <arbalgov@microsoft.com> Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com> Co-authored-by: Chris Davis <chrisdavis@outlook.com> Co-authored-by: Yosef Durr <yodurr@microsoft.com> Co-authored-by: Bartosz Sosnowski <bzoz@users.noreply.github.com> Co-authored-by: vldmr11080 <57061786+vldmr11080@users.noreply.github.com> Co-authored-by: yuyoyuppe <yuyoyuppe@users.noreply.github.com> Co-authored-by: Alekhya Kommuru <alkommur@microsoft.com> Co-authored-by: Alekhya <reddykalekhya@gmail.com> Co-authored-by: yuyoyuppe <a.yuyoyuppe@gmail.com> Co-authored-by: Udit Singh <udsing@microsoft.com>
534 lines
30 KiB
XML
534 lines
30 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
|
|
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
|
|
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension" >
|
|
|
|
<?define RepoDir="$(var.ProjectDir)..\..\" ?>
|
|
<?define BinX64Dir="$(var.RepoDir)x64\$(var.Configuration)\" ?>
|
|
<Product Id="*"
|
|
Name="PowerToys (Preview)"
|
|
Language="1033"
|
|
Version="$(var.Version)"
|
|
Manufacturer="Microsoft"
|
|
UpgradeCode="42B84BF7-5FBF-473B-9C8B-049DC16F7708">
|
|
|
|
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" InstallPrivileges="elevated" Platform="x64" />
|
|
|
|
<MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
|
|
|
|
<Upgrade Id="42B84BF7-5FBF-473B-9C8B-049DC16F7708">
|
|
<UpgradeVersion
|
|
Minimum="0.11.0" Maximum="$(var.Version)"
|
|
Property="PREVIOUSVERSIONSINSTALLED"
|
|
IncludeMinimum="yes" IncludeMaximum="no" />
|
|
</Upgrade>
|
|
|
|
<MediaTemplate EmbedCab="yes" />
|
|
|
|
<Property Id="WINDOWSBUILDNUMBER" Secure="yes">
|
|
<RegistrySearch Id="BuildNumberSearch" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion" Name="CurrentBuildNumber" Type="raw" />
|
|
</Property>
|
|
<Condition Message="This application is only supported on Windows 10 version 1803 (build 17134) or higher.">
|
|
<![CDATA[(WINDOWSBUILDNUMBER >= 17134)]]>
|
|
</Condition>
|
|
|
|
<Icon Id="powertoys.ico" SourceFile="$(var.BinX64Dir)\svgs\icon.ico"/>
|
|
<Property Id="ARPPRODUCTICON" Value="powertoys.ico" />
|
|
<Feature Id="CoreFeature" Title="PowerToys" AllowAdvertise="no" Absent="disallow" TypicalDefault="install"
|
|
Description="Contains the Shortcut Guide and Fancy Zones features.">
|
|
<ComponentGroupRef Id="CoreComponents" />
|
|
<ComponentGroupRef Id="ResourcesComponents" />
|
|
</Feature>
|
|
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />
|
|
<UI>
|
|
<UIRef Id="WixUI_PTInstallDir"/>
|
|
<Publish Dialog="ExitDialog"
|
|
Control="Finish"
|
|
Event="DoAction"
|
|
Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish>
|
|
<Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Property="_REMOVE_ALL" Value="Yes">1</Publish>
|
|
<Publish Dialog="UserExit" Control="Finish" Event="DoAction" Value="TelemetryLogInstallCancel">NOT Installed</Publish>
|
|
<Publish Dialog="FatalError" Control="Finish" Event="DoAction" Value="TelemetryLogInstallFail">NOT Installed</Publish>
|
|
<Publish Dialog="UserExit" Control="Finish" Event="DoAction" Value="TelemetryLogUninstallCancel">Installed AND _REMOVE_ALL="Yes"</Publish>
|
|
<Publish Dialog="FatalError" Control="Finish" Event="DoAction" Value="TelemetryLogUninstallFail">Installed AND _REMOVE_ALL="Yes"</Publish>
|
|
<Publish Dialog="UserExit" Control="Finish" Event="DoAction" Value="TelemetryLogRepairCancel">Installed AND NOT (_REMOVE_ALL="Yes")</Publish>
|
|
<Publish Dialog="FatalError" Control="Finish" Event="DoAction" Value="TelemetryLogRepairFail">Installed AND NOT (_REMOVE_ALL="Yes")</Publish>
|
|
</UI>
|
|
<WixVariable Id="WixUIBannerBmp" Value="$(var.ProjectDir)\Bitmaps\banner.bmp" />
|
|
<WixVariable Id="WixUIDialogBmp" Value="$(var.ProjectDir)\Bitmaps\dialog.bmp" />
|
|
<WixVariable Id="WixUILicenseRtf" Value="$(var.RepoDir)\License.rtf" />
|
|
<Property Id="INSTALLSTARTMENUSHORTCUT" Value="1"/>
|
|
<Property Id="CREATESCHEDULEDTASK" Value="1"/>
|
|
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="1"/>
|
|
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch PowerToys" />
|
|
<Property Id="WixShellExecTarget" Value="[#PowerToys.exe]" />
|
|
<CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" />
|
|
|
|
<Property Id ="EXISTINGPOWERRENAMEEXTPATH">
|
|
<RegistrySearch Id="ExistingExtPath" Root="HKCR" Key="CLSID\{0440049F-D1DC-4E46-B27B-98393D79486B}\InprocServer32" Type="raw"/>
|
|
</Property>
|
|
<Property Id ="EXISTINGIMAGERESIZERPATH">
|
|
<RegistrySearch Id="ExistingImageResizerPath" Root="HKCU" Key="Software\Classes\CLSID\{51B4D7E5-7568-4234-B4BB-47FB3C016A69}\InprocServer32" Type="raw"/>
|
|
</Property>
|
|
|
|
<InstallExecuteSequence>
|
|
<Custom Action="SetRegisterPowerToysSchTaskParam" Before="RegisterPowerToysSchTask" />
|
|
<Custom Action="RegisterPowerToysSchTask" After="InstallFiles">
|
|
NOT Installed and CREATESCHEDULEDTASK = 1
|
|
</Custom>
|
|
<Custom Action="WixCloseApplications" Before="RemoveFiles" />
|
|
<Custom Action="RemovePowerToysSchTasks" After="RemoveFiles" />
|
|
<Custom Action="TelemetryLogInstallSuccess" After="InstallFinalize">
|
|
NOT Installed
|
|
</Custom>
|
|
<Custom Action="TelemetryLogUninstallSuccess" After="InstallFinalize">
|
|
Installed and (NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")
|
|
</Custom>
|
|
</InstallExecuteSequence>
|
|
|
|
<CustomAction Id="SetRegisterPowerToysSchTaskParam"
|
|
Property="RegisterPowerToysSchTask"
|
|
Value="[#PowerToys.exe]" />
|
|
|
|
<!-- Needs to Impersonate="no" and Execute="deferred" in order to run elevated. -->
|
|
<CustomAction Id="RegisterPowerToysSchTask"
|
|
Return="ignore"
|
|
Impersonate="no"
|
|
Execute="deferred"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="CreateScheduledTaskCA"
|
|
/>
|
|
|
|
<CustomAction Id="RemovePowerToysSchTasks"
|
|
Return="ignore"
|
|
Impersonate="no"
|
|
Execute="deferred"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="RemoveScheduledTasksCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogInstallSuccess"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogInstallSuccessCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogInstallCancel"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogInstallCancelCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogInstallFail"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogInstallFailCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogUninstallSuccess"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogUninstallSuccessCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogUninstallCancel"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogUninstallCancelCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogUninstallFail"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogUninstallFailCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogRepairCancel"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogRepairCancelCA"
|
|
/>
|
|
|
|
<CustomAction Id="TelemetryLogRepairFail"
|
|
Return="ignore"
|
|
Impersonate="yes"
|
|
BinaryKey="PTCustomActions"
|
|
DllEntry="TelemetryLogRepairFailCA"
|
|
/>
|
|
|
|
<!-- Close 'PowerToys.exe' before uninstall-->
|
|
<Property Id="MSIRESTARTMANAGERCONTROL" Value="Disable" />
|
|
<!-- Restart explorer.exe if we detect existing PowerRenameExt.dll or ImageResizerExt.dll installation -->
|
|
<util:CloseApplication Target="explorer.exe" RebootPrompt="no" TerminateProcess="0">
|
|
EXISTINGPOWERRENAMEEXTPATH OR EXISTINGIMAGERESIZERPATH
|
|
</util:CloseApplication>
|
|
<util:CloseApplication CloseMessage="yes" Target="PowerToys.exe" ElevatedCloseMessage="yes" RebootPrompt="no" TerminateProcess="0" />
|
|
</Product>
|
|
|
|
<Fragment>
|
|
<Binary Id="PTCustomActions" SourceFile="$(var.PowerToysSetupCustomActions.TargetPath)" />
|
|
</Fragment>
|
|
|
|
<Fragment>
|
|
<Directory Id="TARGETDIR" Name="SourceDir">
|
|
<Directory Id="ProgramFiles64Folder">
|
|
<Directory Id="INSTALLFOLDER" Name="PowerToys">
|
|
<Directory Id="SvgsInstallFolder" Name="svgs"/>
|
|
<Directory Id="ModulesInstallFolder" Name="modules">
|
|
<!-- Resource file directories -->
|
|
<?foreach Language in ar;bg;ca;cs;de;es;eu-ES;fr;he;hu;it;nb-NO;nl;pl;pt-BR;ru;sk;tr;zh-Hans?>
|
|
<!--NB: Ids can't contain hyphens-->
|
|
<?if $(var.Language) = eu-ES?>
|
|
<?define IdSafeLanguage = eu_ES?>
|
|
<?elseif $(var.Language) = nb-NO?>
|
|
<?define IdSafeLanguage = nb_NO?>
|
|
<?elseif $(var.Language) = pt-BR?>
|
|
<?define IdSafeLanguage = pt_BR?>
|
|
<?elseif $(var.Language) = zh-Hans?>
|
|
<?define IdSafeLanguage = zh_Hans?>
|
|
<?else?>
|
|
<?define IdSafeLanguage = $(var.Language)?>
|
|
<?endif?>
|
|
<Directory Id="Resources$(var.IdSafeLanguage)Folder" Name="$(var.Language)" />
|
|
<?undef IdSafeLanguage?>
|
|
<?endforeach?>
|
|
</Directory>
|
|
<Directory Id="SettingsHtmlInstallFolder" Name="settings-html">
|
|
<Directory Id="SettingsHtmlDistInstallFolder" Name="dist"/>
|
|
</Directory>
|
|
</Directory>
|
|
</Directory>
|
|
<Directory Id="ProgramMenuFolder">
|
|
<Directory Id="ApplicationProgramsFolder" Name="PowerToys"/>
|
|
</Directory>
|
|
<Directory Id="DesktopFolder" Name="Desktop"/>
|
|
</Directory>
|
|
</Fragment>
|
|
|
|
<Fragment>
|
|
<DirectoryRef Id="INSTALLFOLDER" FileSource="$(var.BinX64Dir)">
|
|
<Component Id="powertoys_toast_clsid" Win64="yes">
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\CLSID\{DD5CACDA-7C2E-4997-A62A-04A597B58F76}">
|
|
<RegistryValue Type="string" Value="PowerToys Toast Notifications Background Activator" />
|
|
<RegistryValue Type="string" Key="LocalServer32" Value="[INSTALLFOLDER]PowerToys.exe -ToastActivated" />
|
|
<RegistryValue Type="string" Key="LocalServer32" Name="ThreadingModel" Value="Apartment" />
|
|
</RegistryKey>
|
|
</Component>
|
|
<Component Id="powertoys_exe" Guid="A2C66D91-3485-4D00-B04D-91844E6B345B" Win64="yes">
|
|
<File Id="PowerToys.exe" KeyPath="yes" Checksum="yes">
|
|
<Shortcut Id="ApplicationStartMenuShortcut"
|
|
Name="PowerToys (Preview)"
|
|
Description="PowerToys - Windows system utilities to maximize productivity"
|
|
Directory="ApplicationProgramsFolder"
|
|
WorkingDirectory="INSTALLFOLDER"
|
|
Icon="powertoys.ico"
|
|
IconIndex="0"
|
|
Advertise="yes">
|
|
<ShortcutProperty Key="System.AppUserModel.ID" Value="Microsoft.PowerToysWin32"/>
|
|
<ShortcutProperty Key="System.AppUserModel.ToastActivatorCLSID" Value="{DD5CACDA-7C2E-4997-A62A-04A597B58F76}"/>
|
|
</Shortcut>
|
|
</File>
|
|
|
|
<RemoveFolder Id="DeleteShortcutFolder" Directory="ApplicationProgramsFolder" On="uninstall" />
|
|
</Component>
|
|
<Component Id="settings_exe" Guid="A5A461A9-7097-4CBA-9D39-3DBBB6B7B80C" Win64="yes">
|
|
<File Id="PowerToysSettings.exe" KeyPath="yes" Checksum="yes" />
|
|
</Component>
|
|
<Component Id="notifications_dll" Guid="23B25EE4-BCA2-45DF-BBCD-82FBDF01C5AB" Win64="yes">
|
|
<File Id="Notifications.dll" KeyPath="yes" Checksum="yes" />
|
|
</Component>
|
|
<Component Id="License_rtf" Guid="3E5AE43B-CFB4-449B-A346-94CAAFF3312E" Win64="yes">
|
|
<File Source="$(var.RepoDir)\License.rtf" Id="License.rtf" KeyPath="yes" />
|
|
</Component>
|
|
</DirectoryRef>
|
|
<DirectoryRef Id="SvgsInstallFolder" FileSource="$(var.BinX64Dir)\svgs\">
|
|
<Component Id="PowerToysSvgs" Guid="7C4D4EED-9338-423D-992C-DCE02F3E2D35" Win64="yes">
|
|
<File Source="$(var.BinX64Dir)\svgs\0.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\1.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\2.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\3.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\4.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\5.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\6.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\7.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\8.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\9.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\no_active_window.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\overlay.svg" />
|
|
<File Source="$(var.BinX64Dir)\svgs\overlay_portrait.svg" />
|
|
</Component>
|
|
</DirectoryRef>
|
|
<DirectoryRef Id="ModulesInstallFolder" FileSource="$(var.BinX64Dir)\modules\">
|
|
<Component Id="Module_ShortcutGuide" Guid="CBD0AC09-91D3-428E-B2B3-05745ADF3473" Win64="yes">
|
|
<File Source="$(var.BinX64Dir)\modules\shortcut_guide.dll" KeyPath="yes" />
|
|
</Component>
|
|
<Component Id="Module_FancyZones" Guid="C6B5272E-6ED4-4B80-B0E7-2FF0355D8CF4" Win64="yes">
|
|
<File Source="$(var.BinX64Dir)\modules\fancyzones.dll" KeyPath="yes" />
|
|
<File Source="$(var.BinX64Dir)\modules\FancyZonesEditor.exe" >
|
|
<netfx:NativeImage Id="FancyZonesEditor.exe" Platform="64bit" Priority="0" />
|
|
</File>
|
|
<File Source="$(var.BinX64Dir)\modules\ControlzEx.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\MahApps.Metro.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\Microsoft.Xaml.Behaviors.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\FancyZonesEditor.exe.config" />
|
|
<File Source="$(var.BinX64Dir)\modules\Microsoft.Bcl.AsyncInterfaces.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Buffers.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Memory.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Numerics.Vectors.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Runtime.CompilerServices.Unsafe.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Text.Encodings.Web.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Text.Json.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Threading.Tasks.Extensions.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.ValueTuple.dll" />
|
|
</Component>
|
|
<Component Id="Module_PowerRename" Guid="E4401D08-27FE-4F96-BA17-0C61FD79E684" Win64="yes">
|
|
<File Source="$(var.BinX64Dir)\modules\PowerRenameExt.dll" KeyPath="yes" />
|
|
<RegistryKey Root="HKCR" Key="CLSID\{0440049F-D1DC-4E46-B27B-98393D79486B}">
|
|
<RegistryValue Type="string" Value="PowerRename Shell Extension" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Value="[ModulesInstallFolder]PowerRenameExt.dll" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="ThreadingModel" Value="Apartment" />
|
|
</RegistryKey>
|
|
<RegistryKey Root="HKCR" Key="AllFileSystemObjects\ShellEx\ContextMenuHandlers\PowerRenameExt">
|
|
<RegistryValue Type="string" Value="{0440049F-D1DC-4E46-B27B-98393D79486B}"/>
|
|
</RegistryKey>
|
|
</Component>
|
|
<Component Id="Module_ImageResizer" Guid="96E63289-759C-4A73-A56B-EE7429932F72" Win64="yes">
|
|
<File Source="$(var.BinX64Dir)\modules\ImageResizer.exe">
|
|
<netfx:NativeImage Id="ImageResizer.exe" Platform="all" Priority="0" />
|
|
</File>
|
|
<File Source="$(var.BinX64Dir)\modules\GalaSoft.MvvmLight.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\GalaSoft.MvvmLight.Platform.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\GalaSoft.MvvmLight.Extras.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\System.Windows.Interactivity.dll">
|
|
<!-- NB: Needed since it's only referenced in XAML. -->
|
|
<netfx:NativeImage Id="Interactivity" Platform="all" Priority="0"/>
|
|
</File>
|
|
<File Source="$(var.BinX64Dir)\modules\Newtonsoft.Json.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\ImageResizerExt.dll" KeyPath="yes" />
|
|
</Component>
|
|
<Component Id="Module_ImageResizer_Registry" Guid="8B593E2C-2D9B-4EBC-93F7-A2B69707DAC9" Win64="yes">
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\CLSID\{51B4D7E5-7568-4234-B4BB-47FB3C016A69}\InprocServer32">
|
|
<RegistryValue Value="[ModulesInstallFolder]ImageResizerExt.dll" Type="string" />
|
|
<RegistryValue Name="ThreadingModel" Value="Apartment" Type="string" />
|
|
</RegistryKey>
|
|
<!-- Registry Key for the drag and drop handler -->
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\Directory\ShellEx\DragDropHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<!-- Registry Keys for the context menu handler for each of the following image formats: bmp, dib, gif, jfif, jpe, jpeg, jpg, jxr, png, rle, tif, tiff, wdp -->
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.bmp\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.dib\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.gif\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.jfif\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.jpe\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.jpeg\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.jpg\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.jxr\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.png\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.rle\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.tif\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.tiff\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\Classes\SystemFileAssociations\.wdp\ShellEx\ContextMenuHandlers\ImageResizer"
|
|
Value="{51B4D7E5-7568-4234-B4BB-47FB3C016A69}"
|
|
Type="string" />
|
|
</Component>
|
|
<Component Id="Module_PowerPreview" Guid="FF1700D5-1B07-4E07-9A62-4D206645EEA9" Win64="yes">
|
|
<!-- Component to include PowerPreview Module Source dll's -->
|
|
<!-- File to include PowerPreview Module native dll -->
|
|
<File Source="$(var.BinX64Dir)\modules\powerpreview.dll" KeyPath="yes" />
|
|
<!-- File to include common library used by preview handlers -->
|
|
<File Source="$(var.BinX64Dir)\modules\PreviewHandlerCommon.dll" />
|
|
<!-- File to include dll for Svg Preview Handler -->
|
|
<File Id="Svg_PreviewHandler_Dll" Source="$(var.BinX64Dir)\modules\SvgPreviewHandler.dll" />
|
|
<!-- Files to include dll's for Markdown Preview Handler and it's dependencies -->
|
|
<File Id="Md_PreviewHandler_Dll" Source="$(var.BinX64Dir)\modules\MarkdownPreviewHandler.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\Markdig.Signed.dll" />
|
|
<File Source="$(var.BinX64Dir)\modules\HtmlAgilityPack.dll" />
|
|
</Component>
|
|
<Component Id="Module_PowerPreview_PerUserRegistry" Guid="CD90ADC0-7CD5-4A62-B0AF-23545C1E6DD3" Win64="yes">
|
|
<!-- Added a separate component for Per-User registry changes -->
|
|
<!-- Registry Key for Class Registration of Svg Preview Handler -->
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\CLSID\{ddee2b8a-6807-48a6-bb20-2338174ff779}">
|
|
<RegistryValue Type="string" Value="SvgPreviewHandler.SvgPreviewHandler" />
|
|
<RegistryValue Type="string" Name="DisplayName" Value="Svg Preview Handler" />
|
|
<RegistryValue Type="string" Name="AppID" Value="{CF142243-F059-45AF-8842-DBBE9783DB14}" />
|
|
<RegistryValue Type="string" Key="Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value=""/>
|
|
<RegistryValue Type="string" Key="InprocServer32" Value="mscoree.dll" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="Assembly" Value="SvgPreviewHandler, Version=$(var.Version).0, Culture=neutral" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="Class" Value="SvgPreviewHandler.SvgPreviewHandler" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="ThreadingModel" Value="Both" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="CodeBase" Value="file:///[#Svg_PreviewHandler_Dll]" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="Assembly" Value="SvgPreviewHandler, Version=$(var.Version).0, Culture=neutral" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="Class" Value="SvgPreviewHandler.SvgPreviewHandler" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="RuntimeVersion" Value="v4.0.30319" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="CodeBase" Value="file:///[#Svg_PreviewHandler_Dll]" />
|
|
</RegistryKey>
|
|
<!-- Registry Key for Class Registration of Markdown Preview Handler -->
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\CLSID\{45769bcc-e8fd-42d0-947e-02beef77a1f5}">
|
|
<RegistryValue Type="string" Value="MarkdownPreviewHandler.MarkdownPreviewHandler" />
|
|
<RegistryValue Type="string" Name="DisplayName" Value="Markdown Preview Handler" />
|
|
<RegistryValue Type="string" Name="AppID" Value="{CF142243-F059-45AF-8842-DBBE9783DB14}" />
|
|
<RegistryValue Type="string" Key="Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Value="mscoree.dll" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="Assembly" Value="MarkdownPreviewHandler, Version=$(var.Version).0, Culture=neutral" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="Class" Value="MarkdownPreviewHandler.MarkdownPreviewHandler" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="ThreadingModel" Value="Both" />
|
|
<RegistryValue Type="string" Key="InprocServer32" Name="CodeBase" Value="file:///[#Md_PreviewHandler_Dll]" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="Assembly" Value="MarkdownPreviewHandler, Version=$(var.Version).0, Culture=neutral" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="Class" Value="MarkdownPreviewHandler.MarkdownPreviewHandler" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="RuntimeVersion" Value="v4.0.30319" />
|
|
<RegistryValue Type="string" Key="InprocServer32\$(var.Version).0" Name="CodeBase" Value="file:///[#Md_PreviewHandler_Dll]" />
|
|
</RegistryKey>
|
|
<!-- Registry Key for AppID registration -->
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\AppID\{CF142243-F059-45AF-8842-DBBE9783DB14}">
|
|
<RegistryValue Type="expandable" Name="DllSurrogate" Value="%SystemRoot%\system32\prevhost.exe" />
|
|
</RegistryKey>
|
|
<!-- Add Svg preview handler to preview handlers list -->
|
|
<RegistryKey Root="HKCU" Key="Software\Microsoft\Windows\CurrentVersion\PreviewHandlers">
|
|
<RegistryValue Type="string" Name="{ddee2b8a-6807-48a6-bb20-2338174ff779}" Value="Svg Preview Handler" />
|
|
</RegistryKey>
|
|
<!-- Add Markdown preview handler to preview handlers list -->
|
|
<RegistryKey Root="HKCU" Key="Software\Microsoft\Windows\CurrentVersion\PreviewHandlers">
|
|
<RegistryValue Type="string" Name="{45769bcc-e8fd-42d0-947e-02beef77a1f5}" Value="Markdown Preview Handler" />
|
|
</RegistryKey>
|
|
<!-- Add file type association for Svg Preview Handler -->
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\.svg\shellex">
|
|
<RegistryValue Type="string" Key="{8895b1c6-b41f-4c1c-a562-0d564250836f}" Value="{ddee2b8a-6807-48a6-bb20-2338174ff779}" />
|
|
</RegistryKey>
|
|
<!-- Add file type association for Markdown Preview Handler -->
|
|
<RegistryKey Root="HKCU" Key="Software\Classes\.md\shellex">
|
|
<RegistryValue Type="string" Key="{8895b1c6-b41f-4c1c-a562-0d564250836f}" Value="{45769bcc-e8fd-42d0-947e-02beef77a1f5}" />
|
|
</RegistryKey>
|
|
<!-- Update Key to use IE11 for prevhost.exe -->
|
|
<RegistryKey Root="HKCU" Key="Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION">
|
|
<RegistryValue Type="integer" Name="prevhost.exe" Value="11000" />
|
|
</RegistryKey>
|
|
</Component>
|
|
</DirectoryRef>
|
|
<DirectoryRef Id="SettingsHtmlInstallFolder" FileSource="$(var.RepoDir)\settings\settings-html\">
|
|
<Component Id="settings_html" Guid="87881A99-E917-4B0D-B1D8-5C6EB9709F96" Win64="yes">
|
|
<File Source="$(var.RepoDir)\src\settings\settings-html\index.html" KeyPath="yes" />
|
|
</Component>
|
|
<Component Id="settings_dark_html" Guid="855866C7-2F13-4B08-B5C1-B507354C2760" Win64="yes">
|
|
<File Source="$(var.RepoDir)\src\settings\settings-html\index-dark.html" KeyPath="yes" />
|
|
</Component>
|
|
</DirectoryRef>
|
|
<DirectoryRef Id="SettingsHtmlDistInstallFolder" FileSource="$(var.RepoDir)\settings\settings-html\dist\">
|
|
<Component Id="settings_js_bundle" Guid="9EF539C1-2F50-421E-B074-C58ED3A9785C" Win64="yes">
|
|
<File Source="$(var.RepoDir)\src\settings\settings-html\dist\bundle.js" KeyPath="yes" />
|
|
</Component>
|
|
</DirectoryRef>
|
|
|
|
<DirectoryRef Id="DesktopFolder">
|
|
<Component Id="DesktopShortcut" Guid="87321F2B-CC48-4326-881E-9C62CC260DC8">
|
|
<Condition>INSTALLDESKTOPSHORTCUT</Condition>
|
|
<RegistryValue Root="HKCU"
|
|
Key="Software\[Manufacturer]\[ProductName]"
|
|
Name="desktopshorcutinstalled"
|
|
Type="integer"
|
|
Value="1"
|
|
KeyPath="yes"/>
|
|
<Shortcut Id="DesktopShortcutId"
|
|
Name="PowerToys (Preview)"
|
|
Description="PowerToys - Windows system utilities to maximize productivity"
|
|
Target="[!PowerToys.exe]"
|
|
WorkingDirectory="INSTALLFOLDER"
|
|
Icon="powertoys.ico"
|
|
Directory="DesktopFolder"/>
|
|
</Component>
|
|
</DirectoryRef>
|
|
</Fragment>
|
|
|
|
<Fragment>
|
|
<ComponentGroup Id="CoreComponents" Directory="INSTALLFOLDER">
|
|
<ComponentRef Id="powertoys_exe" />
|
|
<ComponentRef Id="notifications_dll" />
|
|
<ComponentRef Id="powertoys_toast_clsid" />
|
|
<ComponentRef Id="License_rtf" />
|
|
<ComponentRef Id="PowerToysSvgs" />
|
|
<ComponentRef Id="Module_ShortcutGuide" />
|
|
<ComponentRef Id="Module_FancyZones" />
|
|
<ComponentRef Id="DesktopShortcut" />
|
|
<ComponentRef Id="Module_PowerRename" />
|
|
<ComponentRef Id="Module_ImageResizer" />
|
|
<ComponentRef Id="Module_ImageResizer_Registry" />
|
|
<ComponentRef Id="Module_PowerPreview" />
|
|
<ComponentRef Id="Module_PowerPreview_PerUserRegistry" />
|
|
<ComponentRef Id="settings_exe" />
|
|
<ComponentRef Id="settings_html" />
|
|
<ComponentRef Id="settings_dark_html" />
|
|
<ComponentRef Id="settings_js_bundle" />
|
|
</ComponentGroup>
|
|
</Fragment>
|
|
<Fragment>
|
|
<ComponentGroup Id="ResourcesComponents">
|
|
<!-- Components for adding resource files -->
|
|
<?foreach Language in ar;bg;ca;cs;de;es;eu-ES;fr;he;hu;it;nb-NO;nl;pl;pt-BR;ru;sk;tr;zh-Hans?>
|
|
<!--NB: Ids can't contain hyphens-->
|
|
<?if $(var.Language) = eu-ES?>
|
|
<?define IdSafeLanguage = eu_ES?>
|
|
<?elseif $(var.Language) = nb-NO?>
|
|
<?define IdSafeLanguage = nb_NO?>
|
|
<?elseif $(var.Language) = pt-BR?>
|
|
<?define IdSafeLanguage = pt_BR?>
|
|
<?elseif $(var.Language) = zh-Hans?>
|
|
<?define IdSafeLanguage = zh_Hans?>
|
|
<?else?>
|
|
<?define IdSafeLanguage = $(var.Language)?>
|
|
<?endif?>
|
|
<Component Id="Resources_$(var.IdSafeLanguage)_Component" Directory="Resources$(var.IdSafeLanguage)Folder">
|
|
<File Id="Resources_ImageResizer_$(var.IdSafeLanguage)_File" Source="$(var.BinX64Dir)\modules\$(var.Language)\ImageResizer.resources.dll" />
|
|
</Component>
|
|
<?undef IdSafeLanguage?>
|
|
<?endforeach?>
|
|
</ComponentGroup>
|
|
</Fragment>
|
|
</Wix>
|