mirror of
https://github.com/Open-Shell/Open-Shell-Menu.git
synced 2026-04-12 18:07:24 +10:00
Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2758ec376 | ||
|
|
dd57854da1 | ||
|
|
40d8f5b119 | ||
|
|
4ebeadd949 | ||
|
|
dc1994e713 | ||
|
|
8c713cc5fd | ||
|
|
58b909037f | ||
|
|
146c27ecd2 | ||
|
|
4943938d0f | ||
|
|
d5c561720d | ||
|
|
58d804d22a | ||
|
|
a280fa92e1 | ||
|
|
f22f10c7d5 | ||
|
|
faf79de4d5 | ||
|
|
552fbd8296 | ||
|
|
055ac87039 | ||
|
|
d82fadb926 | ||
|
|
31acb6b092 | ||
|
|
077afd2377 | ||
|
|
680e6eedbb | ||
|
|
f60e2a18cb |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -20,12 +20,15 @@
|
|||||||
# Build results
|
# Build results
|
||||||
[Dd]ebug/
|
[Dd]ebug/
|
||||||
[Dd]ebug64/
|
[Dd]ebug64/
|
||||||
|
[Dd]ebugARM64/
|
||||||
[Dd]ebugPublic/
|
[Dd]ebugPublic/
|
||||||
[Rr]elease/
|
[Rr]elease/
|
||||||
[Rr]elease64/
|
[Rr]elease64/
|
||||||
|
[Rr]eleaseARM64/
|
||||||
[Rr]eleases/
|
[Rr]eleases/
|
||||||
x64/
|
x64/
|
||||||
x86/
|
x86/
|
||||||
|
ARM64/
|
||||||
bld/
|
bld/
|
||||||
[Bb]in/
|
[Bb]in/
|
||||||
[Oo]bj/
|
[Oo]bj/
|
||||||
|
|||||||
@@ -23,8 +23,11 @@ You can find the latest stable version here:
|
|||||||
|
|
||||||
[](https://github.com/Open-Shell/Open-Shell-Menu/releases/latest)
|
[](https://github.com/Open-Shell/Open-Shell-Menu/releases/latest)
|
||||||
|
|
||||||
### ⚠️ Windows for ARM compatibility ⚠️
|
> [!IMPORTANT]
|
||||||
Open-Shell is not compatible with Windows for ARM. If you install it on a Windows for ARM installation (ex. using Parallels Desktop on an Apple Silicon Mac), you will no longer be able to log into your account the next time you reboot. Please refrain from installing Open-Shell on Windows for ARM.
|
> #### Windows for ARM compatibility
|
||||||
|
> Open-Shell is compatible with Windows for ARM since version [4.4.196](https://github.com/Open-Shell/Open-Shell-Menu/releases/tag/v4.4.196).
|
||||||
|
>
|
||||||
|
> If you install older one on a Windows for ARM installation (ex. using Parallels Desktop on an Apple Silicon Mac), you will no longer be able to log into your account the next time you reboot. Please refrain from installing Open-Shell on Windows for ARM.
|
||||||
|
|
||||||
### Temporary Translation/Language Solution
|
### Temporary Translation/Language Solution
|
||||||
1. Download [language DLL](https://coddec.github.io/Classic-Shell/www.classicshell.net/translations/index.html)
|
1. Download [language DLL](https://coddec.github.io/Classic-Shell/www.classicshell.net/translations/index.html)
|
||||||
|
|||||||
@@ -1,6 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64EC">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +17,14 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64EC">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +33,14 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64EC">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -53,6 +77,13 @@
|
|||||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||||
<TargetName>$(ProjectName)64</TargetName>
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64EC'">
|
||||||
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
|
<BuildAsX>true</BuildAsX>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|||||||
@@ -146,4 +146,4 @@
|
|||||||
<Filter>Resource Files</Filter>
|
<Filter>Resource Files</Filter>
|
||||||
</Image>
|
</Image>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -1,6 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +13,10 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +25,10 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -53,6 +65,9 @@
|
|||||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||||
<TargetName>$(ProjectName)_64</TargetName>
|
<TargetName>$(ProjectName)_64</TargetName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<TargetName>$(ProjectName)_64</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
|||||||
@@ -1,6 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64EC">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +17,14 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64EC">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +33,14 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64EC">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -53,6 +77,13 @@
|
|||||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||||
<TargetName>$(ProjectName)_64</TargetName>
|
<TargetName>$(ProjectName)_64</TargetName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64EC'">
|
||||||
|
<TargetName>$(ProjectName)_64</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<TargetName>$(ProjectName)_64</TargetName>
|
||||||
|
<BuildAsX>true</BuildAsX>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PreprocessorDefinitions>_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
|||||||
@@ -98,4 +98,4 @@
|
|||||||
<Filter>Resource Files</Filter>
|
<Filter>Resource Files</Filter>
|
||||||
</Image>
|
</Image>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -16,6 +16,14 @@
|
|||||||
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)64\</OutDir>
|
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)64\</OutDir>
|
||||||
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)64\</IntDir>
|
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)64\</IntDir>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)ARM64\</OutDir>
|
||||||
|
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)ARM64\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64EC'">
|
||||||
|
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)ARM64EC\</OutDir>
|
||||||
|
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)ARM64EC\</IntDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<!-- Common settings for all configurations -->
|
<!-- Common settings for all configurations -->
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -70,12 +70,17 @@ IatHookData *SetIatHook( IMAGE_DOS_HEADER *dosHeader, DWORD iatOffset, DWORD int
|
|||||||
{
|
{
|
||||||
IatHookData *hook=g_IatHooks+g_IatHookCount;
|
IatHookData *hook=g_IatHooks+g_IatHookCount;
|
||||||
g_IatHookCount++;
|
g_IatHookCount++;
|
||||||
|
#if defined(_M_AMD64) || defined(_M_IX86)
|
||||||
hook->jump[0]=hook->jump[1]=0x90; // NOP
|
hook->jump[0]=hook->jump[1]=0x90; // NOP
|
||||||
hook->jump[2]=0xFF; hook->jump[3]=0x25; // JUMP
|
hook->jump[2]=0xFF; hook->jump[3]=0x25; // JUMP
|
||||||
#ifdef _WIN64
|
#if defined(_M_AMD64)
|
||||||
hook->jumpOffs=0;
|
hook->jumpOffs=0;
|
||||||
#else
|
#else
|
||||||
hook->jumpOffs=(DWORD)(hook)+8;
|
hook->jumpOffs=(DWORD)(hook)+8;
|
||||||
|
#endif
|
||||||
|
#elif defined(_M_ARM64)
|
||||||
|
hook->jump[0]=0x48; hook->jump[1]=0x00; hook->jump[2]=0x00; hook->jump[3]=0x58; // LDR X8, newProc
|
||||||
|
hook->jump[4]=0x00; hook->jump[5]=0x01; hook->jump[6]=0x1F; hook->jump[7]=0xD6; // BR X8
|
||||||
#endif
|
#endif
|
||||||
hook->newProc=newProc;
|
hook->newProc=newProc;
|
||||||
hook->oldProc=(void*)thunk->u1.Function;
|
hook->oldProc=(void*)thunk->u1.Function;
|
||||||
|
|||||||
@@ -6,8 +6,12 @@
|
|||||||
|
|
||||||
struct IatHookData
|
struct IatHookData
|
||||||
{
|
{
|
||||||
|
#if defined(_M_AMD64) || defined(_M_IX86)
|
||||||
unsigned char jump[4]; // jump instruction 0x90, 0x90, 0xFF, 0x25
|
unsigned char jump[4]; // jump instruction 0x90, 0x90, 0xFF, 0x25
|
||||||
DWORD jumpOffs; // jump instruction offset
|
DWORD jumpOffs; // jump instruction offset
|
||||||
|
#elif defined(_M_ARM64)
|
||||||
|
unsigned char jump[8]; // LDR <address>, BR
|
||||||
|
#endif
|
||||||
void *newProc; // the address of the new proc
|
void *newProc; // the address of the new proc
|
||||||
void *oldProc; // the address of the old proc
|
void *oldProc; // the address of the old proc
|
||||||
IMAGE_THUNK_DATA *thunk; // the IAT thunk
|
IMAGE_THUNK_DATA *thunk; // the IAT thunk
|
||||||
|
|||||||
@@ -1,6 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64EC">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +17,14 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64EC">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -42,6 +58,9 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutDir>$(IntDir)</OutDir>
|
<OutDir>$(IntDir)</OutDir>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<BuildAsX>true</BuildAsX>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
|||||||
@@ -384,14 +384,14 @@ HICON CreateDisabledIcon( HICON hIcon, int iconSize )
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Loads an image file into a bitmap and optionally resizes it
|
// Loads an image file into a bitmap and optionally resizes it
|
||||||
HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, bool bPremultiply, std::vector<unsigned int> *pButtonAnim )
|
HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, bool bPremultiply, std::vector<unsigned int> *pButtonAnim, UINT dpi )
|
||||||
{
|
{
|
||||||
HBITMAP srcBmp=NULL;
|
HBITMAP srcBmp=NULL;
|
||||||
if (_wcsicmp(PathFindExtension(path),L".bmp")==0)
|
if (_wcsicmp(PathFindExtension(path),L".bmp")==0)
|
||||||
{
|
{
|
||||||
srcBmp=(HBITMAP)LoadImage(NULL,path,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION|LR_LOADFROMFILE);
|
srcBmp=(HBITMAP)LoadImage(NULL,path,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION|LR_LOADFROMFILE);
|
||||||
}
|
}
|
||||||
if (srcBmp && !pSize)
|
if (srcBmp && !pSize && !dpi)
|
||||||
return srcBmp;
|
return srcBmp;
|
||||||
CComPtr<IWICImagingFactory> pFactory;
|
CComPtr<IWICImagingFactory> pFactory;
|
||||||
if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory)))
|
if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory)))
|
||||||
@@ -482,6 +482,12 @@ HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, b
|
|||||||
else
|
else
|
||||||
frameHeightD=frameWidthD*frameHeightS/frameWidthS;
|
frameHeightD=frameWidthD*frameHeightS/frameWidthS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (dpi)
|
||||||
|
{
|
||||||
|
frameWidthD=ScaleForDpi(dpi,frameWidthD);
|
||||||
|
frameHeightD=ScaleForDpi(dpi,frameHeightD);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
BITMAPINFO bi={0};
|
BITMAPINFO bi={0};
|
||||||
@@ -946,7 +952,12 @@ UINT GetDpi(HWND hwnd)
|
|||||||
return dpi;
|
return dpi;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ScaleForDpi(UINT dpi, int value)
|
||||||
|
{
|
||||||
|
return MulDiv(value, dpi, USER_DEFAULT_SCREEN_DPI);
|
||||||
|
}
|
||||||
|
|
||||||
int ScaleForDpi(HWND hwnd, int value)
|
int ScaleForDpi(HWND hwnd, int value)
|
||||||
{
|
{
|
||||||
return MulDiv(value, GetDpi(hwnd), USER_DEFAULT_SCREEN_DPI);
|
return ScaleForDpi(GetDpi(hwnd), value);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ HICON ShExtractIcon( const char *path, int index, int iconSize );
|
|||||||
HBITMAP BitmapFromIcon( HICON hIcon, int iconSize, unsigned int **pBits, bool bDestroyIcon );
|
HBITMAP BitmapFromIcon( HICON hIcon, int iconSize, unsigned int **pBits, bool bDestroyIcon );
|
||||||
|
|
||||||
// Loads an image file into a bitmap and optionally resizes it
|
// Loads an image file into a bitmap and optionally resizes it
|
||||||
HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, bool bPremultiply, std::vector<unsigned int> *pButtonAnim );
|
HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, bool bPremultiply, std::vector<unsigned int> *pButtonAnim, UINT dpi=0 );
|
||||||
|
|
||||||
// Loads a bitmap from a IMAGE resource
|
// Loads a bitmap from a IMAGE resource
|
||||||
HBITMAP LoadImageResource( HMODULE hModule, const wchar_t *name, bool bTopDown, bool bPremultiply );
|
HBITMAP LoadImageResource( HMODULE hModule, const wchar_t *name, bool bTopDown, bool bPremultiply );
|
||||||
@@ -88,6 +88,8 @@ HFONT CreateFontSetting( const wchar_t *fontStr, int dpi );
|
|||||||
// Return DPI of given window (or system DPI on older systems)
|
// Return DPI of given window (or system DPI on older systems)
|
||||||
UINT GetDpi(HWND hwnd = nullptr);
|
UINT GetDpi(HWND hwnd = nullptr);
|
||||||
|
|
||||||
|
// Scale given value according to given DPI
|
||||||
|
int ScaleForDpi(UINT dpi, int value);
|
||||||
// Scale given value according to DPI of window
|
// Scale given value according to DPI of window
|
||||||
int ScaleForDpi(HWND hwnd, int value);
|
int ScaleForDpi(HWND hwnd, int value);
|
||||||
|
|
||||||
|
|||||||
@@ -24,23 +24,15 @@ body {
|
|||||||
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu"><img src="images/OpenShell.png" style="border: 0px solid ; width: 64px; height: 64px; float:left;" alt="Open-Shell website" title="Open-Shell website"></a><h1 style="padding-top: 12px; padding-bottom: 12px;"> Links</h1>
|
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu"><img src="images/OpenShell.png" style="border: 0px solid ; width: 64px; height: 64px; float:left;" alt="Open-Shell website" title="Open-Shell website"></a><h1 style="padding-top: 12px; padding-bottom: 12px;"> Links</h1>
|
||||||
<span style="font-style: italic; color: #2b88d8; font-weight: bold;"></span><br>The latest version can be found on the Open-Shell website:<br>
|
<span style="font-style: italic; color: #2b88d8; font-weight: bold;"></span><br>The latest version can be found on the Open-Shell website:<br>
|
||||||
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/releases/latest">https://github.com/Open-Shell/Open-Shell-Menu/releases/latest/</a><br>
|
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/releases/latest">https://github.com/Open-Shell/Open-Shell-Menu/releases/latest/</a><br>
|
||||||
<br>
|
|
||||||
View the project history here:<br>
|
|
||||||
<span style="font-weight: bold;">History: </span><a target="_blank" href="https://coddec.github.io/Classic-Shell/www.classicshell.net/history/">https://coddec.github.io/Classic-Shell/www.classicshell.net/history/</a><br>
|
|
||||||
<br>
|
|
||||||
<br>
|
<br>
|
||||||
<h2>Get Help</h1>
|
<h2>Get Help</h1>
|
||||||
For answers to frequently asked questions look here:<br>
|
Discussion forums:<br>
|
||||||
<span style="font-weight: bold;">FAQ: </span><a target="_blank" href="https://coddec.github.io/Classic-Shell/www.classicshell.net/faq/" target="_blank">https://coddec.github.io/Classic-Shell/www.classicshell.net/faq/</a><br>
|
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/discussions" target="_blank">https://github.com/Open-Shell/Open-Shell-Menu/discussions</a><br>
|
||||||
|
|
||||||
<br>
|
|
||||||
If you don't find your answer in the FAQ, try the discussion forums:<br>
|
|
||||||
<span style="font-weight: bold;">Discussion Forums: </span><a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/discussions" target="_blank">https://github.com/Open-Shell/Open-Shell-Menu/discussions</a><br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
<br>
|
<br>
|
||||||
<h2>Report a Problem</h1>
|
<h2>Report a Problem</h1>
|
||||||
Report bugs and feature requests in the development forums:<br>
|
Report bugs and feature requests in the development forums:<br>
|
||||||
<span style="font-weight: bold;">Development Forums: </span><a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/issues" target="_blank">https://github.com/Open-Shell/Open-Shell-Menu/issues</a><br>
|
<a target="_blank" href="https://github.com/Open-Shell/Open-Shell-Menu/issues" target="_blank">https://github.com/Open-Shell/Open-Shell-Menu/issues</a><br>
|
||||||
|
|
||||||
</body></html>
|
</body></html>
|
||||||
|
|||||||
@@ -9,10 +9,7 @@
|
|||||||
The latest version can be found on the Open-Shell website:\par
|
The latest version can be found on the Open-Shell website:\par
|
||||||
{{\field{\*\fldinst{HYPERLINK https://github.com/Open-Shell/Open-Shell-Menu }}{\fldrslt{https://github.com/Open-Shell/Open-Shell-Menu\ul0\cf0}}}}\f1\fs22\par
|
{{\field{\*\fldinst{HYPERLINK https://github.com/Open-Shell/Open-Shell-Menu }}{\fldrslt{https://github.com/Open-Shell/Open-Shell-Menu\ul0\cf0}}}}\f1\fs22\par
|
||||||
\par
|
\par
|
||||||
For answers to frequently asked questions look here:\par
|
Use the discussion forums to get help:\par
|
||||||
{{\field{\*\fldinst{HYPERLINK https://coddec.github.io/Classic-Shell/www.classicshell.net/faq/ }}{\fldrslt{https://coddec.github.io/Classic-Shell/www.classicshell.net/faq/\ul0\cf0}}}}\f1\fs22\par
|
|
||||||
\par
|
|
||||||
Or use the discussion forums to get help:\par
|
|
||||||
{{\field{\*\fldinst{HYPERLINK https://github.com/Open-Shell/Open-Shell-Menu/discussions }}{\fldrslt{https://github.com/Open-Shell/Open-Shell-Menu/discussions\ul0\cf0}}}}\f1\fs22\par
|
{{\field{\*\fldinst{HYPERLINK https://github.com/Open-Shell/Open-Shell-Menu/discussions }}{\fldrslt{https://github.com/Open-Shell/Open-Shell-Menu/discussions\ul0\cf0}}}}\f1\fs22\par
|
||||||
\par
|
\par
|
||||||
Report problems in the Open-Shell development forums:\par
|
Report problems in the Open-Shell development forums:\par
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<WixLocalization Culture="en-US" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
|
<WixLocalization Culture="en-US" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
|
||||||
<String Id="Error32bit" Overridable="yes">This installer is only for 32-bit version of Windows. For 64-bit Windows you need to run Setup64.</String>
|
<String Id="Error32bit" Overridable="yes">This installer is only for 32-bit version of Windows. For 64-bit Windows you need to run Setup64.</String>
|
||||||
|
<String Id="Error64bit" Overridable="yes">This installer is only for 64-bit version of Windows. For ARM64 Windows you need to run SetupARM64.</String>
|
||||||
<String Id="ErrorWin7" Overridable="yes">Open-Shell requires Windows 7 or above.</String>
|
<String Id="ErrorWin7" Overridable="yes">Open-Shell requires Windows 7 or above.</String>
|
||||||
<String Id="ErrorNewVersion" Overridable="yes">A newer version of [ProductName] is already installed. The setup will now exit.</String>
|
<String Id="ErrorNewVersion" Overridable="yes">A newer version of [ProductName] is already installed. The setup will now exit.</String>
|
||||||
<String Id="ExplorerTitle" Overridable="yes">Classic Explorer</String>
|
<String Id="ExplorerTitle" Overridable="yes">Classic Explorer</String>
|
||||||
|
|||||||
@@ -72,337 +72,498 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Immersive7", "Skins\Immersi
|
|||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|ARM64 = Debug|ARM64
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
Debug|x64 = Debug|x64
|
Debug|x64 = Debug|x64
|
||||||
|
Release|ARM64 = Release|ARM64
|
||||||
Release|Win32 = Release|Win32
|
Release|Win32 = Release|Win32
|
||||||
Release|x64 = Release|x64
|
Release|x64 = Release|x64
|
||||||
|
Setup|ARM64 = Setup|ARM64
|
||||||
Setup|Win32 = Setup|Win32
|
Setup|Win32 = Setup|Win32
|
||||||
Setup|x64 = Setup|x64
|
Setup|x64 = Setup|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|ARM64.Deploy.0 = Debug|ARM64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|Win32.ActiveCfg = Debug|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|Win32.Build.0 = Debug|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|x64.ActiveCfg = Debug|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|x64.Build.0 = Debug|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|ARM64.Deploy.0 = Release|ARM64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|Win32.ActiveCfg = Release|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|Win32.Build.0 = Release|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|Win32.Build.0 = Release|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|x64.ActiveCfg = Release|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|x64.ActiveCfg = Release|x64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|x64.Build.0 = Release|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Release|x64.Build.0 = Release|x64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|Win32.ActiveCfg = Setup|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|Win32.Build.0 = Setup|Win32
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|x64.ActiveCfg = Setup|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|x64.Build.0 = Setup|x64
|
{87D5FE20-AF86-458A-9AA3-3131EB06179B}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|ARM64.Deploy.0 = Debug|ARM64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|Win32.ActiveCfg = Debug|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|Win32.Build.0 = Debug|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|x64.ActiveCfg = Debug|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|x64.Build.0 = Debug|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|ARM64.Deploy.0 = Release|ARM64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|Win32.ActiveCfg = Release|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|Win32.Build.0 = Release|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|Win32.Build.0 = Release|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|x64.ActiveCfg = Release|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|x64.ActiveCfg = Release|x64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|x64.Build.0 = Release|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Release|x64.Build.0 = Release|x64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|Win32.ActiveCfg = Setup|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|Win32.Build.0 = Setup|Win32
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|x64.ActiveCfg = Setup|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|x64.Build.0 = Setup|x64
|
{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|Win32.ActiveCfg = Debug|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|Win32.Build.0 = Debug|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.ActiveCfg = Debug|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.Build.0 = Debug|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|Win32.ActiveCfg = Release|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|Win32.Build.0 = Release|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|Win32.Build.0 = Release|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.ActiveCfg = Release|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.ActiveCfg = Release|x64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.Build.0 = Release|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.Build.0 = Release|x64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|Win32.ActiveCfg = Setup|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|Win32.Build.0 = Setup|Win32
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.ActiveCfg = Setup|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.Build.0 = Setup|x64
|
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|ARM64.ActiveCfg = Debug|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|ARM64.Build.0 = Debug|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|Win32.ActiveCfg = Debug|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|Win32.Build.0 = Debug|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|x64.ActiveCfg = Debug|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|x64.ActiveCfg = Debug|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Debug|x64.Build.0 = Debug|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|ARM64.ActiveCfg = Release|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|ARM64.Build.0 = Release|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|Win32.ActiveCfg = Release|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|Win32.Build.0 = Release|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|Win32.Build.0 = Release|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|x64.ActiveCfg = Release|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|x64.ActiveCfg = Release|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Release|x64.Build.0 = Release|Win32
|
||||||
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Setup|ARM64.ActiveCfg = Release|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Setup|Win32.ActiveCfg = Release|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Setup|x64.ActiveCfg = Release|Win32
|
{A4A4D3B1-24E7-401E-A37C-72141D7603DC}.Setup|x64.ActiveCfg = Release|Win32
|
||||||
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|Win32.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|Win32.Build.0 = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|x64.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|x64.Build.0 = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|Win32.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|Win32.Build.0 = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|x64.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|x64.Build.0 = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|Win32.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|Win32.Build.0 = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|x64.ActiveCfg = Resource|Win32
|
{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|Win32.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|Win32.Build.0 = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|x64.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|x64.Build.0 = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|Win32.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|Win32.Build.0 = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|x64.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|x64.Build.0 = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|Win32.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|Win32.Build.0 = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|x64.ActiveCfg = Resource|Win32
|
{404821C5-4EE4-4908-A759-5EF6DAC14AB6}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|Win32.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|Win32.Build.0 = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|x64.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|x64.Build.0 = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|Win32.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|Win32.Build.0 = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|x64.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|x64.Build.0 = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|Win32.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|Win32.Build.0 = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|x64.ActiveCfg = Resource|Win32
|
{9EC23CA9-384A-4EEB-979E-69879DC1A78C}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|Win32.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|Win32.Build.0 = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|x64.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|x64.Build.0 = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|Win32.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|Win32.Build.0 = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|x64.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|x64.Build.0 = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|Win32.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|Win32.Build.0 = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|x64.ActiveCfg = Resource|Win32
|
{066C9721-26D5-4C4D-868E-50C2BA0A8196}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|Win32.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|Win32.Build.0 = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|x64.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|x64.Build.0 = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|Win32.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|Win32.Build.0 = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|x64.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|x64.Build.0 = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|Win32.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|Win32.Build.0 = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|x64.ActiveCfg = Resource|Win32
|
{66D1EAA4-65D1-45CC-9989-E616FC0575EB}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|Win32.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|Win32.Build.0 = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|x64.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|x64.Build.0 = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|Win32.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|Win32.Build.0 = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|x64.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|x64.Build.0 = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|Win32.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|Win32.Build.0 = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|x64.ActiveCfg = Resource|Win32
|
{81EB6336-366C-47DD-82CF-FF6C36CCD2B5}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|ARM64.ActiveCfg = Debug|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|Win32.ActiveCfg = Debug|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|Win32.Build.0 = Debug|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|x64.ActiveCfg = Debug|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Debug|x64.ActiveCfg = Debug|Win32
|
||||||
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|ARM64.ActiveCfg = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|Win32.ActiveCfg = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|Win32.Build.0 = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|Win32.Build.0 = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|x64.ActiveCfg = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Release|x64.ActiveCfg = Release|Win32
|
||||||
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|ARM64.ActiveCfg = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|Win32.ActiveCfg = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|Win32.Build.0 = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|Win32.Build.0 = Release|Win32
|
||||||
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|x64.ActiveCfg = Release|Win32
|
{E1017135-9916-4B11-9AC5-1EC0BD8F8CD6}.Setup|x64.ActiveCfg = Release|Win32
|
||||||
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|ARM64.ActiveCfg = Debug|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|Win32.ActiveCfg = Debug|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|Win32.Build.0 = Debug|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|x64.ActiveCfg = Debug|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Debug|x64.ActiveCfg = Debug|Win32
|
||||||
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|ARM64.ActiveCfg = Release|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|Win32.ActiveCfg = Release|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|Win32.Build.0 = Release|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|Win32.Build.0 = Release|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|x64.ActiveCfg = Release|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Release|x64.ActiveCfg = Release|Win32
|
||||||
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|ARM64.ActiveCfg = Setup|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|Win32.ActiveCfg = Setup|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|Win32.Build.0 = Setup|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|x64.ActiveCfg = Setup|Win32
|
{E93271C8-0252-4A08-8227-1978C64C2D34}.Setup|x64.ActiveCfg = Setup|Win32
|
||||||
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|Win32.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|Win32.Build.0 = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|x64.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|Win32.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|Win32.Build.0 = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|x64.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|Win32.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|Win32.Build.0 = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|x64.ActiveCfg = Resource|Win32
|
{0A60FD06-3A81-4651-A869-9850DBC115EA}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|Win32.ActiveCfg = Debug|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|Win32.Build.0 = Debug|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|x64.ActiveCfg = Debug|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|x64.Build.0 = Debug|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Release|Win32.ActiveCfg = Release|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Release|Win32.Build.0 = Release|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|Win32.Build.0 = Release|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Release|x64.ActiveCfg = Release|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|x64.ActiveCfg = Release|x64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Release|x64.Build.0 = Release|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Release|x64.Build.0 = Release|x64
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|ARM64.Build.0 = Release|ARM64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|Win32.ActiveCfg = Release|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|Win32.Build.0 = Release|Win32
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|Win32.Build.0 = Release|Win32
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|x64.ActiveCfg = Release|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|x64.ActiveCfg = Release|x64
|
||||||
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|x64.Build.0 = Release|x64
|
{D42FE717-485B-492D-884A-1999F6D51154}.Setup|x64.Build.0 = Release|x64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|Win32.ActiveCfg = Debug|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|Win32.Build.0 = Debug|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|x64.ActiveCfg = Debug|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|x64.Build.0 = Debug|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|Win32.ActiveCfg = Release|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|Win32.Build.0 = Release|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|Win32.Build.0 = Release|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|x64.ActiveCfg = Release|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|x64.ActiveCfg = Release|x64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|x64.Build.0 = Release|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Release|x64.Build.0 = Release|x64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|Win32.ActiveCfg = Setup|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|Win32.Build.0 = Setup|Win32
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|x64.ActiveCfg = Setup|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|x64.Build.0 = Setup|x64
|
{65D5C193-E807-4094-AE19-19E6A310A312}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|Win32.ActiveCfg = Debug|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|Win32.Build.0 = Debug|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|x64.ActiveCfg = Debug|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|x64.Build.0 = Debug|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|Win32.ActiveCfg = Release|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|Win32.Build.0 = Release|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|Win32.Build.0 = Release|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|x64.ActiveCfg = Release|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|x64.ActiveCfg = Release|x64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|x64.Build.0 = Release|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Release|x64.Build.0 = Release|x64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|Win32.ActiveCfg = Setup|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|Win32.Build.0 = Setup|Win32
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|x64.ActiveCfg = Setup|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|x64.Build.0 = Setup|x64
|
{BC0E6E7C-08C1-4F12-A754-4608E5A22FA8}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|ARM64.ActiveCfg = Debug|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|Win32.ActiveCfg = Debug|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|Win32.Build.0 = Debug|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|x64.ActiveCfg = Debug|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Debug|x64.ActiveCfg = Debug|Win32
|
||||||
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|ARM64.ActiveCfg = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|Win32.ActiveCfg = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|Win32.Build.0 = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|Win32.Build.0 = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|x64.ActiveCfg = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Release|x64.ActiveCfg = Release|Win32
|
||||||
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|ARM64.ActiveCfg = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|Win32.ActiveCfg = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|Win32.Build.0 = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|Win32.Build.0 = Release|Win32
|
||||||
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|x64.ActiveCfg = Release|Win32
|
{171B46B0-6083-4D9E-BD33-946EA3BD76FA}.Setup|x64.ActiveCfg = Release|Win32
|
||||||
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|Win32.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|Win32.Build.0 = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|x64.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|x64.Build.0 = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|Win32.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|Win32.Build.0 = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|x64.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|x64.Build.0 = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|Win32.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|Win32.Build.0 = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|x64.ActiveCfg = Resource|Win32
|
{A2CCDE9F-17CE-461E-8BD9-00261B8855A6}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|Win32.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|Win32.Build.0 = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|x64.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|x64.Build.0 = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|Win32.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|Win32.Build.0 = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|x64.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|x64.Build.0 = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|Win32.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|Win32.Build.0 = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|x64.ActiveCfg = Resource|Win32
|
{31C016FB-9EA1-4AF5-987A-37210C04DA06}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|Win32.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|Win32.Build.0 = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|x64.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|x64.Build.0 = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|Win32.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|Win32.Build.0 = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|x64.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|x64.Build.0 = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|Win32.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|Win32.Build.0 = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|x64.ActiveCfg = Resource|Win32
|
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|Win32.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|Win32.Build.0 = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|x64.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|x64.Build.0 = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|Win32.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|Win32.Build.0 = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|x64.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|x64.Build.0 = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|Win32.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|Win32.Build.0 = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|x64.ActiveCfg = Resource|Win32
|
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|ARM64.Deploy.0 = Debug|ARM64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|Win32.ActiveCfg = Debug|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|Win32.Build.0 = Debug|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|x64.ActiveCfg = Debug|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|x64.Build.0 = Debug|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|ARM64.Deploy.0 = Release|ARM64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|Win32.ActiveCfg = Release|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|Win32.Build.0 = Release|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|Win32.Build.0 = Release|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|x64.ActiveCfg = Release|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|x64.ActiveCfg = Release|x64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|x64.Build.0 = Release|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Release|x64.Build.0 = Release|x64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|ARM64.ActiveCfg = Setup|ARM64
|
||||||
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|ARM64.Build.0 = Setup|ARM64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|Win32.ActiveCfg = Setup|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|Win32.ActiveCfg = Setup|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|Win32.Build.0 = Setup|Win32
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|Win32.Build.0 = Setup|Win32
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|x64.ActiveCfg = Setup|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|x64.ActiveCfg = Setup|x64
|
||||||
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|x64.Build.0 = Setup|x64
|
{A42C6159-ACA8-46D1-A0FB-19C398B137D5}.Setup|x64.Build.0 = Setup|x64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|Win32.ActiveCfg = Debug|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|Win32.Build.0 = Debug|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|x64.ActiveCfg = Debug|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|x64.Build.0 = Debug|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|Win32.ActiveCfg = Release|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|Win32.Build.0 = Release|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|Win32.Build.0 = Release|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|x64.ActiveCfg = Release|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|x64.ActiveCfg = Release|x64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|x64.Build.0 = Release|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Release|x64.Build.0 = Release|x64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|ARM64.Build.0 = Release|ARM64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|Win32.ActiveCfg = Release|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|Win32.Build.0 = Release|Win32
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|Win32.Build.0 = Release|Win32
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|x64.ActiveCfg = Release|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|x64.ActiveCfg = Release|x64
|
||||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|x64.Build.0 = Release|x64
|
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}.Setup|x64.Build.0 = Release|x64
|
||||||
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|Win32.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|Win32.Build.0 = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|x64.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|x64.Build.0 = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|Win32.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|Win32.Build.0 = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|x64.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|x64.Build.0 = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|Win32.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|Win32.Build.0 = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|x64.ActiveCfg = Resource|Win32
|
{7BD26CB3-5280-48FD-9A86-C13E321018D5}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|Win32.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|Win32.Build.0 = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|x64.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|x64.Build.0 = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|Win32.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|Win32.Build.0 = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|x64.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|x64.Build.0 = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|Win32.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|Win32.Build.0 = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|x64.ActiveCfg = Resource|Win32
|
{598AB4AC-008E-4501-90B3-C5213834C1DA}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|Win32.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|Win32.Build.0 = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|x64.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|x64.Build.0 = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|Win32.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|Win32.Build.0 = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|x64.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|x64.Build.0 = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|Win32.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|Win32.Build.0 = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|x64.ActiveCfg = Resource|Win32
|
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|Win32.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|Win32.Build.0 = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|x64.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|x64.Build.0 = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|Win32.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|Win32.Build.0 = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|x64.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|x64.Build.0 = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|Win32.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|Win32.Build.0 = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|x64.ActiveCfg = Resource|Win32
|
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|ARM64.ActiveCfg = Debug|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|Win32.ActiveCfg = Debug|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|Win32.Build.0 = Debug|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|x64.ActiveCfg = Debug|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Debug|x64.ActiveCfg = Debug|Win32
|
||||||
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|ARM64.ActiveCfg = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|Win32.ActiveCfg = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|Win32.Build.0 = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|Win32.Build.0 = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|x64.ActiveCfg = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Release|x64.ActiveCfg = Release|Win32
|
||||||
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|ARM64.ActiveCfg = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|Win32.ActiveCfg = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|Win32.ActiveCfg = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|Win32.Build.0 = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|Win32.Build.0 = Release|Win32
|
||||||
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|x64.ActiveCfg = Release|Win32
|
{D94BD2A6-1872-4F01-B911-F406603AA2E1}.Setup|x64.ActiveCfg = Release|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|Win32.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|Win32.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|x64.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|x64.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|Win32.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|Win32.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|x64.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|x64.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|ARM64.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|Win32.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|Win32.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|x64.ActiveCfg = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|x64.Build.0 = Resource|Win32
|
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|x64.Build.0 = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|ARM64.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|Win32.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|Win32.ActiveCfg = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|Win32.Build.0 = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|Win32.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|x64.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|x64.ActiveCfg = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|x64.Build.0 = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|x64.Build.0 = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|ARM64.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|Win32.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|Win32.ActiveCfg = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|Win32.Build.0 = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|Win32.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|x64.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|x64.ActiveCfg = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|x64.Build.0 = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|x64.Build.0 = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|ARM64.ActiveCfg = Resource|Win32
|
||||||
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|ARM64.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|Win32.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|Win32.ActiveCfg = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|Win32.Build.0 = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|Win32.Build.0 = Resource|Win32
|
||||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|x64.ActiveCfg = Resource|Win32
|
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|x64.ActiveCfg = Resource|Win32
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
if exist Output rd /Q /S Output
|
if exist Output rd /Q /S Output
|
||||||
md Output
|
md Output
|
||||||
md Output\x64
|
md Output\x64
|
||||||
|
md Output\ARM64
|
||||||
|
|
||||||
echo -- Compiling
|
echo -- Compiling
|
||||||
|
|
||||||
@@ -9,13 +10,18 @@ for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio
|
|||||||
REM Restore NuGet packages
|
REM Restore NuGet packages
|
||||||
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Restore -p:RestorePackagesConfig=true /verbosity:quiet /nologo
|
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Restore -p:RestorePackagesConfig=true /verbosity:quiet /nologo
|
||||||
|
|
||||||
REM ********* Build 64-bit solution
|
REM ********* Build x64 solution
|
||||||
echo --- 64bit
|
echo --- x64
|
||||||
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="x64" /verbosity:quiet /nologo
|
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="x64" /verbosity:quiet /nologo
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
|
REM ********* Build ARM64 solution
|
||||||
|
echo --- ARM64
|
||||||
|
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="ARM64" /verbosity:quiet /nologo
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
REM ********* Build 32-bit solution (must be after 64-bit)
|
REM ********* Build 32-bit solution (must be after 64-bit)
|
||||||
echo --- 32bit
|
echo --- x86
|
||||||
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="Win32" /verbosity:quiet /nologo
|
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="Win32" /verbosity:quiet /nologo
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
@@ -45,6 +51,13 @@ copy /B ..\..\build\bin\Release\Update.exe Output > nul
|
|||||||
copy /B ..\..\build\bin\Release\DesktopToasts.dll Output > nul
|
copy /B ..\..\build\bin\Release\DesktopToasts.dll Output > nul
|
||||||
copy /B ..\..\build\bin\Release\SetupHelper.exe Output > nul
|
copy /B ..\..\build\bin\Release\SetupHelper.exe Output > nul
|
||||||
|
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicExplorer64.dll Output\ARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicIEDLL_64.dll Output\ARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicIE_64.exe Output\ARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenu.exe Output\ARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenuDLL.dll Output\ARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenuHelper64.dll Output\ARM64 > nul
|
||||||
|
|
||||||
copy /B ..\..\build\bin\Setup64\ClassicExplorer64.dll Output\x64 > nul
|
copy /B ..\..\build\bin\Setup64\ClassicExplorer64.dll Output\x64 > nul
|
||||||
copy /B ..\..\build\bin\Setup64\ClassicIEDLL_64.dll Output\x64 > nul
|
copy /B ..\..\build\bin\Setup64\ClassicIEDLL_64.dll Output\x64 > nul
|
||||||
copy /B ..\..\build\bin\Setup64\ClassicIE_64.exe Output\x64 > nul
|
copy /B ..\..\build\bin\Setup64\ClassicIE_64.exe Output\x64 > nul
|
||||||
@@ -73,6 +86,7 @@ copy /B "..\..\build\bin\Skins\Immersive.skin7" Output > nul
|
|||||||
REM ********* Collect debug info
|
REM ********* Collect debug info
|
||||||
md Output\PDB32
|
md Output\PDB32
|
||||||
md Output\PDB64
|
md Output\PDB64
|
||||||
|
md Output\PDBARM64
|
||||||
|
|
||||||
REM Explorer 32
|
REM Explorer 32
|
||||||
copy /B ..\..\build\bin\Setup\ClassicExplorer32.pdb Output\PDB32 > nul
|
copy /B ..\..\build\bin\Setup\ClassicExplorer32.pdb Output\PDB32 > nul
|
||||||
@@ -84,6 +98,10 @@ REM Explorer 64
|
|||||||
copy /B ..\..\build\bin\Setup64\ClassicExplorer64.pdb Output\PDB64 > nul
|
copy /B ..\..\build\bin\Setup64\ClassicExplorer64.pdb Output\PDB64 > nul
|
||||||
copy /B Output\x64\ClassicExplorer64.dll Output\PDB64 > nul
|
copy /B Output\x64\ClassicExplorer64.dll Output\PDB64 > nul
|
||||||
|
|
||||||
|
REM Explorer ARM64
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicExplorer64.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\ClassicExplorer64.dll Output\PDBARM64 > nul
|
||||||
|
|
||||||
REM IE 32
|
REM IE 32
|
||||||
copy /B ..\..\build\bin\Setup\ClassicIEDLL_32.pdb Output\PDB32 > nul
|
copy /B ..\..\build\bin\Setup\ClassicIEDLL_32.pdb Output\PDB32 > nul
|
||||||
copy /B Output\ClassicIEDLL_32.dll Output\PDB32 > nul
|
copy /B Output\ClassicIEDLL_32.dll Output\PDB32 > nul
|
||||||
@@ -96,6 +114,12 @@ copy /B Output\x64\ClassicIEDLL_64.dll Output\PDB64 > nul
|
|||||||
copy /B ..\..\build\bin\Setup64\ClassicIE_64.pdb Output\PDB64 > nul
|
copy /B ..\..\build\bin\Setup64\ClassicIE_64.pdb Output\PDB64 > nul
|
||||||
copy /B Output\x64\ClassicIE_64.exe Output\PDB64 > nul
|
copy /B Output\x64\ClassicIE_64.exe Output\PDB64 > nul
|
||||||
|
|
||||||
|
REM IE ARM64
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicIEDLL_64.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\ClassicIEDLL_64.dll Output\PDBARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\ClassicIE_64.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\ClassicIE_64.exe Output\PDBARM64 > nul
|
||||||
|
|
||||||
REM Menu 32
|
REM Menu 32
|
||||||
copy /B ..\..\build\bin\Setup\StartMenu.pdb Output\PDB32 > nul
|
copy /B ..\..\build\bin\Setup\StartMenu.pdb Output\PDB32 > nul
|
||||||
copy /B Output\StartMenu.exe Output\PDB32 > nul
|
copy /B Output\StartMenu.exe Output\PDB32 > nul
|
||||||
@@ -116,6 +140,13 @@ copy /B Output\x64\StartMenuDLL.dll Output\PDB64 > nul
|
|||||||
copy /B ..\..\build\bin\Setup64\StartMenuHelper64.pdb Output\PDB64 > nul
|
copy /B ..\..\build\bin\Setup64\StartMenuHelper64.pdb Output\PDB64 > nul
|
||||||
copy /B Output\x64\StartMenuHelper64.dll Output\PDB64 > nul
|
copy /B Output\x64\StartMenuHelper64.dll Output\PDB64 > nul
|
||||||
|
|
||||||
|
REM Menu ARM64
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenu.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\StartMenu.exe Output\PDBARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenuDLL.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\StartMenuDLL.dll Output\PDBARM64 > nul
|
||||||
|
copy /B ..\..\build\bin\SetupARM64\StartMenuHelper64.pdb Output\PDBARM64 > nul
|
||||||
|
copy /B Output\ARM64\StartMenuHelper64.dll Output\PDBARM64 > nul
|
||||||
|
|
||||||
REM ********* Source Index PDBs
|
REM ********* Source Index PDBs
|
||||||
|
|
||||||
@@ -140,6 +171,14 @@ if exist %PDBSTR_PATH% (
|
|||||||
exit /b 1
|
exit /b 1
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
for %%f in (Output\PDBARM64\*.pdb) do (
|
||||||
|
%PDBSTR_PATH% -w -p:%%f -s:srcsrv -i:Output\pdbstr.txt
|
||||||
|
if not ERRORLEVEL 0 (
|
||||||
|
echo Error adding source index to PDB
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
REM ********* Prepare symbols
|
REM ********* Prepare symbols
|
||||||
@@ -148,11 +187,13 @@ set SYMSTORE_PATH="C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symstore
|
|||||||
|
|
||||||
%SYMSTORE_PATH% add /r /f Output\PDB32 /s Output\symbols /t OpenShell -:NOREFS > nul
|
%SYMSTORE_PATH% add /r /f Output\PDB32 /s Output\symbols /t OpenShell -:NOREFS > nul
|
||||||
%SYMSTORE_PATH% add /r /f Output\PDB64 /s Output\symbols /t OpenShell -:NOREFS > nul
|
%SYMSTORE_PATH% add /r /f Output\PDB64 /s Output\symbols /t OpenShell -:NOREFS > nul
|
||||||
|
%SYMSTORE_PATH% add /r /f Output\PDBARM64 /s Output\symbols /t OpenShell -:NOREFS > nul
|
||||||
rd /Q /S Output\symbols\000Admin > nul
|
rd /Q /S Output\symbols\000Admin > nul
|
||||||
del Output\symbols\pingme.txt > nul
|
del Output\symbols\pingme.txt > nul
|
||||||
|
|
||||||
rd /Q /S Output\PDB32
|
rd /Q /S Output\PDB32
|
||||||
rd /Q /S Output\PDB64
|
rd /Q /S Output\PDB64
|
||||||
|
rd /Q /S Output\PDBARM64
|
||||||
|
|
||||||
REM ********* Build ADMX
|
REM ********* Build ADMX
|
||||||
echo --- ADMX
|
echo --- ADMX
|
||||||
|
|||||||
@@ -36,9 +36,9 @@ md Temp
|
|||||||
@set /a "CS_VERSION_NUM=%%A<<24|%%B<<16|%%C"
|
@set /a "CS_VERSION_NUM=%%A<<24|%%B<<16|%%C"
|
||||||
)
|
)
|
||||||
|
|
||||||
REM ********* Build 32-bit MSI
|
REM ********* Build x86 MSI
|
||||||
echo --- 32bit MSI
|
echo --- x86 MSI
|
||||||
candle Setup.wxs -nologo -out Temp\Setup32.wixobj -ext WixUIExtension -ext WixUtilExtension -dx64=0 -dCS_LANG_FOLDER=%CS_LANG_FOLDER% -dCS_LANG_NAME=%CS_LANG_NAME%
|
candle Setup.wxs -nologo -out Temp\Setup32.wixobj -ext WixUIExtension -ext WixUtilExtension -dx64=0 -dARM64=0 -dCS_LANG_FOLDER=%CS_LANG_FOLDER% -dCS_LANG_NAME=%CS_LANG_NAME%
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
@REM We need to suppress ICE38 and ICE43 because they apply only to per-user installation. We only support per-machine installs
|
@REM We need to suppress ICE38 and ICE43 because they apply only to per-user installation. We only support per-machine installs
|
||||||
@@ -46,10 +46,9 @@ candle Setup.wxs -nologo -out Temp\Setup32.wixobj -ext WixUIExtension -ext WixUt
|
|||||||
light Temp\Setup32.wixobj -nologo -out Temp\Setup32.msi -ext WixUIExtension -ext WixUtilExtension -loc ..\Localization\%CS_LANG_FOLDER%\OpenShellText-%CS_LANG_NAME%.wxl -loc ..\Localization\%CS_LANG_FOLDER%\WixUI_%CS_LANG_NAME%.wxl -sice:ICE38 -sice:ICE43 -sice:ICE09
|
light Temp\Setup32.wixobj -nologo -out Temp\Setup32.msi -ext WixUIExtension -ext WixUtilExtension -loc ..\Localization\%CS_LANG_FOLDER%\OpenShellText-%CS_LANG_NAME%.wxl -loc ..\Localization\%CS_LANG_FOLDER%\WixUI_%CS_LANG_NAME%.wxl -sice:ICE38 -sice:ICE43 -sice:ICE09
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
|
REM ********* Build x64 MSI
|
||||||
REM ********* Build 64-bit MSI
|
echo --- x64 MSI
|
||||||
echo --- 64bit MSI
|
candle Setup.wxs -nologo -out Temp\Setup64.wixobj -ext WixUIExtension -ext WixUtilExtension -dx64=1 -dARM64=0 -dCS_LANG_FOLDER=%CS_LANG_FOLDER% -dCS_LANG_NAME=%CS_LANG_NAME%
|
||||||
candle Setup.wxs -nologo -out Temp\Setup64.wixobj -ext WixUIExtension -ext WixUtilExtension -dx64=1 -dCS_LANG_FOLDER=%CS_LANG_FOLDER% -dCS_LANG_NAME=%CS_LANG_NAME%
|
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
@REM We need to suppress ICE38 and ICE43 because they apply only to per-user installation. We only support per-machine installs
|
@REM We need to suppress ICE38 and ICE43 because they apply only to per-user installation. We only support per-machine installs
|
||||||
@@ -57,6 +56,15 @@ candle Setup.wxs -nologo -out Temp\Setup64.wixobj -ext WixUIExtension -ext WixUt
|
|||||||
light Temp\Setup64.wixobj -nologo -out Temp\Setup64.msi -ext WixUIExtension -ext WixUtilExtension -loc ..\Localization\%CS_LANG_FOLDER%\OpenShellText-%CS_LANG_NAME%.wxl -loc ..\Localization\%CS_LANG_FOLDER%\WixUI_%CS_LANG_NAME%.wxl -sice:ICE38 -sice:ICE43 -sice:ICE09
|
light Temp\Setup64.wixobj -nologo -out Temp\Setup64.msi -ext WixUIExtension -ext WixUtilExtension -loc ..\Localization\%CS_LANG_FOLDER%\OpenShellText-%CS_LANG_NAME%.wxl -loc ..\Localization\%CS_LANG_FOLDER%\WixUI_%CS_LANG_NAME%.wxl -sice:ICE38 -sice:ICE43 -sice:ICE09
|
||||||
@if ERRORLEVEL 1 exit /b 1
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
|
REM ********* Build ARM64 MSI
|
||||||
|
echo --- ARM64 MSI
|
||||||
|
candle Setup.wxs -nologo -out Temp\SetupARM64.wixobj -ext WixUIExtension -ext WixUtilExtension -dx64=0 -dARM64=1 -dCS_LANG_FOLDER=%CS_LANG_FOLDER% -dCS_LANG_NAME=%CS_LANG_NAME%
|
||||||
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
|
@REM We need to suppress ICE38 and ICE43 because they apply only to per-user installation. We only support per-machine installs
|
||||||
|
@REM We need to suppress ICE09 because the helper DLLs need to go into the system directory (for safety reasons)
|
||||||
|
light Temp\SetupARM64.wixobj -nologo -out Temp\SetupARM64.msi -ext WixUIExtension -ext WixUtilExtension -loc ..\Localization\%CS_LANG_FOLDER%\OpenShellText-%CS_LANG_NAME%.wxl -loc ..\Localization\%CS_LANG_FOLDER%\WixUI_%CS_LANG_NAME%.wxl -sice:ICE38 -sice:ICE43 -sice:ICE09
|
||||||
|
@if ERRORLEVEL 1 exit /b 1
|
||||||
|
|
||||||
REM ********* Build MSI Checksums
|
REM ********* Build MSI Checksums
|
||||||
echo --- MSI Checksums
|
echo --- MSI Checksums
|
||||||
|
|||||||
@@ -12,10 +12,13 @@
|
|||||||
#include "StringUtils.h"
|
#include "StringUtils.h"
|
||||||
#include "FNVHash.h"
|
#include "FNVHash.h"
|
||||||
|
|
||||||
// Setup.exe is a bootstrap application that contains installers for 32-bit and 64-bit.
|
// Setup.exe is a bootstrap application that contains installers for x86, x64 and ARM64.
|
||||||
// It unpacks the right installer into the temp directory and executes it.
|
// It unpacks the right installer into the temp directory and executes it.
|
||||||
|
|
||||||
typedef BOOL (WINAPI *FIsWow64Process)( HANDLE hProcess, PBOOL Wow64Process );
|
typedef BOOL (WINAPI *FIsWow64Process)( HANDLE hProcess, PBOOL Wow64Process );
|
||||||
|
typedef BOOL (WINAPI *FIsWow64Process2)( HANDLE hProcess, USHORT *pProcessMachine, USHORT *pNativeMachine );
|
||||||
|
typedef BOOL (WINAPI *FWow64DisableWow64FsRedirection)( PVOID* OldValue );
|
||||||
|
typedef BOOL (WINAPI *FWow64RevertWow64FsRedirection)( PVOID OldValue );
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -31,6 +34,14 @@ enum
|
|||||||
ERR_MSIEXEC, // msiexec failed to start
|
ERR_MSIEXEC, // msiexec failed to start
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum ExtractType
|
||||||
|
{
|
||||||
|
None,
|
||||||
|
x86,
|
||||||
|
x64,
|
||||||
|
ARM64
|
||||||
|
};
|
||||||
|
|
||||||
struct Chunk
|
struct Chunk
|
||||||
{
|
{
|
||||||
int start1, start2, len;
|
int start1, start2, len;
|
||||||
@@ -49,7 +60,7 @@ static void WriteFileXOR( HANDLE hFile, const unsigned char *buf, int size )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bool bQuiet )
|
static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, ExtractType extractType, bool bQuiet )
|
||||||
{
|
{
|
||||||
void *pRes=NULL;
|
void *pRes=NULL;
|
||||||
HRSRC hResInfo=FindResource(hInstance,MAKEINTRESOURCE(IDR_MSI_CHECKSUM),L"MSI_FILE");
|
HRSRC hResInfo=FindResource(hInstance,MAKEINTRESOURCE(IDR_MSI_CHECKSUM),L"MSI_FILE");
|
||||||
@@ -70,13 +81,21 @@ static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bo
|
|||||||
}
|
}
|
||||||
return ERR_HASH_NOTFOUND;
|
return ERR_HASH_NOTFOUND;
|
||||||
}
|
}
|
||||||
unsigned int hash0=((unsigned int*)pRes)[b64?1:0];
|
unsigned int hash0=((unsigned int*)pRes)[extractType-1];
|
||||||
const Chunk *pChunks=NULL;
|
const Chunk *pChunks=NULL;
|
||||||
int chunkCount=0;
|
int chunkCount=0;
|
||||||
if (b64)
|
if (extractType==x64)
|
||||||
{
|
{
|
||||||
chunkCount=((unsigned int*)pRes)[2];
|
chunkCount=((unsigned int*)pRes)[3];
|
||||||
pChunks=(Chunk*)((unsigned int*)pRes+3);
|
pChunks=(Chunk*)((unsigned int*)pRes+4);
|
||||||
|
}
|
||||||
|
if (extractType==ARM64)
|
||||||
|
{
|
||||||
|
int x64chunkCount=((unsigned int*)pRes)[3];
|
||||||
|
const Chunk *px64Chunks=(Chunk*)((unsigned int*)pRes+4);
|
||||||
|
|
||||||
|
chunkCount=((unsigned int*)(px64Chunks+x64chunkCount))[0];
|
||||||
|
pChunks = (Chunk*)((unsigned int*)(px64Chunks+x64chunkCount)+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
// extract the installer
|
// extract the installer
|
||||||
@@ -99,11 +118,11 @@ static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bo
|
|||||||
}
|
}
|
||||||
return ERR_MSIRES_NOTFOUND;
|
return ERR_MSIRES_NOTFOUND;
|
||||||
}
|
}
|
||||||
const unsigned char *pRes64=NULL;
|
const unsigned char *pRes64=NULL, *pResArm64=NULL;
|
||||||
int size32=SizeofResource(hInstance,hResInfo);
|
int size32=SizeofResource(hInstance,hResInfo);
|
||||||
unsigned int hash;
|
unsigned int hash;
|
||||||
int size64=0;
|
int size64=0, sizeArm64=0;
|
||||||
if (b64)
|
if (extractType==x64)
|
||||||
{
|
{
|
||||||
HRSRC hResInfo=FindResource(hInstance,MAKEINTRESOURCE(IDR_MSI_FILE64),L"MSI_FILE");
|
HRSRC hResInfo=FindResource(hInstance,MAKEINTRESOURCE(IDR_MSI_FILE64),L"MSI_FILE");
|
||||||
if (hResInfo)
|
if (hResInfo)
|
||||||
@@ -140,6 +159,43 @@ static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bo
|
|||||||
if (pos<size64)
|
if (pos<size64)
|
||||||
hash=CalcFNVHash(pRes64+pos,size64-pos,hash);
|
hash=CalcFNVHash(pRes64+pos,size64-pos,hash);
|
||||||
}
|
}
|
||||||
|
else if (extractType==ARM64)
|
||||||
|
{
|
||||||
|
HRSRC hResInfo=FindResource(hInstance,MAKEINTRESOURCE(IDR_MSI_FILEARM64),L"MSI_FILE");
|
||||||
|
if (hResInfo)
|
||||||
|
{
|
||||||
|
HGLOBAL hRes=LoadResource(hInstance,hResInfo);
|
||||||
|
pResArm64=(unsigned char*)LockResource(hRes);
|
||||||
|
}
|
||||||
|
if (!pResArm64)
|
||||||
|
{
|
||||||
|
if (!bQuiet)
|
||||||
|
{
|
||||||
|
wchar_t strTitle[256];
|
||||||
|
if (!LoadString(hInstance,IDS_APP_TITLE,strTitle,_countof(strTitle))) strTitle[0]=0;
|
||||||
|
wchar_t strText[256];
|
||||||
|
if (!LoadString(hInstance,IDS_ERR_INTERNAL,strText,_countof(strText))) strText[0]=0;
|
||||||
|
MessageBox(NULL,strText,strTitle,MB_OK|MB_ICONERROR);
|
||||||
|
}
|
||||||
|
return ERR_MSIRES_NOTFOUND;
|
||||||
|
}
|
||||||
|
|
||||||
|
sizeArm64=SizeofResource(hInstance,hResInfo);
|
||||||
|
hash=FNV_HASH0;
|
||||||
|
int start=0;
|
||||||
|
int pos=0;
|
||||||
|
for (int i=0;i<chunkCount;i++)
|
||||||
|
{
|
||||||
|
const Chunk& chunk = pChunks[i];
|
||||||
|
if (start<chunk.start2)
|
||||||
|
hash=CalcFNVHash(pResArm64+pos,chunk.start2-start,hash);
|
||||||
|
hash=CalcFNVHash(pRes32+chunk.start1,chunk.len,hash);
|
||||||
|
pos+=chunk.start2-start;
|
||||||
|
start=chunk.start2+chunk.len;
|
||||||
|
}
|
||||||
|
if (pos<sizeArm64)
|
||||||
|
hash=CalcFNVHash(pResArm64+pos,sizeArm64-pos,hash);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
hash=CalcFNVHash(pRes32,size32);
|
hash=CalcFNVHash(pRes32,size32);
|
||||||
if (hash!=hash0)
|
if (hash!=hash0)
|
||||||
@@ -173,7 +229,7 @@ static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bo
|
|||||||
}
|
}
|
||||||
return ERR_MSI_EXTRACTFAIL;
|
return ERR_MSI_EXTRACTFAIL;
|
||||||
}
|
}
|
||||||
if (b64)
|
if (extractType==x64)
|
||||||
{
|
{
|
||||||
int start=0;
|
int start=0;
|
||||||
int pos=0;
|
int pos=0;
|
||||||
@@ -189,6 +245,22 @@ static int ExtractMsi( HINSTANCE hInstance, const wchar_t *msiName, bool b64, bo
|
|||||||
if (pos<size64)
|
if (pos<size64)
|
||||||
WriteFileXOR(hFile,pRes64+pos,size64-pos);
|
WriteFileXOR(hFile,pRes64+pos,size64-pos);
|
||||||
}
|
}
|
||||||
|
else if (extractType==ARM64)
|
||||||
|
{
|
||||||
|
int start=0;
|
||||||
|
int pos=0;
|
||||||
|
for (int i=0;i<chunkCount;i++)
|
||||||
|
{
|
||||||
|
const Chunk &chunk=pChunks[i];
|
||||||
|
if (start<chunk.start2)
|
||||||
|
WriteFileXOR(hFile,pResArm64+pos,chunk.start2-start);
|
||||||
|
WriteFileXOR(hFile,pRes32+chunk.start1,chunk.len);
|
||||||
|
pos+=chunk.start2-start;
|
||||||
|
start=chunk.start2+chunk.len;
|
||||||
|
}
|
||||||
|
if (pos<sizeArm64)
|
||||||
|
WriteFileXOR(hFile,pResArm64+pos,sizeArm64-pos);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
WriteFileXOR(hFile,pRes32,size32);
|
WriteFileXOR(hFile,pRes32,size32);
|
||||||
@@ -218,7 +290,7 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
wchar_t *const *params=CommandLineToArgvW(lpCmdLine,&count);
|
wchar_t *const *params=CommandLineToArgvW(lpCmdLine,&count);
|
||||||
if (!params) count=0;
|
if (!params) count=0;
|
||||||
|
|
||||||
int extract=0;
|
ExtractType extractType=None;
|
||||||
bool bQuiet=false;
|
bool bQuiet=false;
|
||||||
for (;count>0;count--,params++)
|
for (;count>0;count--,params++)
|
||||||
{
|
{
|
||||||
@@ -233,9 +305,11 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (_wcsicmp(params[0],L"extract32")==0)
|
if (_wcsicmp(params[0],L"extract32")==0)
|
||||||
extract=32;
|
extractType=x86;
|
||||||
if (_wcsicmp(params[0],L"extract64")==0)
|
if (_wcsicmp(params[0],L"extract64")==0)
|
||||||
extract=64;
|
extractType=x64;
|
||||||
|
if (_wcsicmp(params[0],L"extractARM64")==0)
|
||||||
|
extractType=ARM64;
|
||||||
if (_wcsicmp(params[0],L"/qn")==0 || _wcsicmp(params[0],L"/q")==0 || _wcsicmp(params[0],L"/quiet")==0 || _wcsicmp(params[0],L"/passive")==0)
|
if (_wcsicmp(params[0],L"/qn")==0 || _wcsicmp(params[0],L"/q")==0 || _wcsicmp(params[0],L"/quiet")==0 || _wcsicmp(params[0],L"/passive")==0)
|
||||||
{
|
{
|
||||||
bQuiet=true;
|
bQuiet=true;
|
||||||
@@ -255,11 +329,11 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
return ERR_VERRES_NOTFOUND;
|
return ERR_VERRES_NOTFOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (extract)
|
if (extractType != None)
|
||||||
{
|
{
|
||||||
wchar_t msiName[_MAX_PATH];
|
wchar_t msiName[_MAX_PATH];
|
||||||
Sprintf(msiName,_countof(msiName),L"OpenShellSetup%d_%d_%d_%d.msi",extract,HIWORD(pVer->dwProductVersionMS),LOWORD(pVer->dwProductVersionMS),HIWORD(pVer->dwProductVersionLS));
|
Sprintf(msiName,_countof(msiName),L"OpenShellSetup%s_%d_%d_%d.msi",(extractType==x86?L"32":(extractType==x64?L"64":L"ARM64")),HIWORD(pVer->dwProductVersionMS),LOWORD(pVer->dwProductVersionMS),HIWORD(pVer->dwProductVersionLS));
|
||||||
return ExtractMsi(hInstance,msiName,extract==64,bQuiet);
|
return ExtractMsi(hInstance,msiName,extractType,bQuiet);
|
||||||
}
|
}
|
||||||
|
|
||||||
// check Windows version
|
// check Windows version
|
||||||
@@ -282,7 +356,9 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
// dynamically link to IsWow64Process because it is not available for Windows 2000
|
// dynamically link to IsWow64Process because it is not available for Windows 2000
|
||||||
HMODULE hKernel32=GetModuleHandle(L"kernel32.dll");
|
HMODULE hKernel32=GetModuleHandle(L"kernel32.dll");
|
||||||
FIsWow64Process isWow64Process=(FIsWow64Process)GetProcAddress(hKernel32,"IsWow64Process");
|
FIsWow64Process isWow64Process=(FIsWow64Process)GetProcAddress(hKernel32,"IsWow64Process");
|
||||||
if (!isWow64Process)
|
FWow64DisableWow64FsRedirection wow64DisableWow64FsRedirection=(FWow64DisableWow64FsRedirection)GetProcAddress(hKernel32,"Wow64DisableWow64FsRedirection");
|
||||||
|
FWow64RevertWow64FsRedirection wow64RevertWow64FsRedirection=(FWow64RevertWow64FsRedirection)GetProcAddress(hKernel32,"Wow64RevertWow64FsRedirection");
|
||||||
|
if (!isWow64Process || !wow64DisableWow64FsRedirection || !wow64RevertWow64FsRedirection)
|
||||||
{
|
{
|
||||||
if (!bQuiet)
|
if (!bQuiet)
|
||||||
{
|
{
|
||||||
@@ -295,13 +371,25 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
return ERR_WRONG_OS;
|
return ERR_WRONG_OS;
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL b64=FALSE;
|
// Use IsWow64Process2 if it's available (Windows 10 1511+), otherwise fall back to IsWow64Process
|
||||||
isWow64Process(GetCurrentProcess(),&b64);
|
FIsWow64Process2 isWow64Process2=(FIsWow64Process2)GetProcAddress(hKernel32,"IsWow64Process2");
|
||||||
|
if (isWow64Process2)
|
||||||
|
{
|
||||||
|
USHORT processMachine = 0, nativeMachine = 0;
|
||||||
|
isWow64Process2(GetCurrentProcess(), &processMachine, &nativeMachine);
|
||||||
|
extractType=nativeMachine==IMAGE_FILE_MACHINE_AMD64?x64:nativeMachine==IMAGE_FILE_MACHINE_ARM64?ARM64:x86;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
BOOL x64=FALSE;
|
||||||
|
isWow64Process(GetCurrentProcess(),&x64);
|
||||||
|
extractType=x64?ExtractType::x64:x86;
|
||||||
|
}
|
||||||
|
|
||||||
wchar_t msiName[_MAX_PATH];
|
wchar_t msiName[_MAX_PATH];
|
||||||
Sprintf(msiName,_countof(msiName),L"%%ALLUSERSPROFILE%%\\OpenShellSetup%d_%d_%d_%d.msi",b64?64:32,HIWORD(pVer->dwProductVersionMS),LOWORD(pVer->dwProductVersionMS),HIWORD(pVer->dwProductVersionLS));
|
Sprintf(msiName,_countof(msiName),L"%%ALLUSERSPROFILE%%\\OpenShellSetup%s_%d_%d_%d.msi",(extractType==x86?L"32":(extractType==x64?L"64":L"ARM64")),HIWORD(pVer->dwProductVersionMS),LOWORD(pVer->dwProductVersionMS),HIWORD(pVer->dwProductVersionLS));
|
||||||
DoEnvironmentSubst(msiName,_countof(msiName));
|
DoEnvironmentSubst(msiName,_countof(msiName));
|
||||||
int ex=ExtractMsi(hInstance,msiName,b64!=FALSE,bQuiet);
|
int ex=ExtractMsi(hInstance,msiName,extractType,bQuiet);
|
||||||
if (ex) return ex;
|
if (ex) return ex;
|
||||||
|
|
||||||
wchar_t cmdLine[2048];
|
wchar_t cmdLine[2048];
|
||||||
@@ -316,11 +404,19 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
|||||||
Sprintf(cmdLine,_countof(cmdLine),L"msiexec.exe /i \"%s\" %s",msiName,lpCmdLine);
|
Sprintf(cmdLine,_countof(cmdLine),L"msiexec.exe /i \"%s\" %s",msiName,lpCmdLine);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// On ARM64 we must launch msiexec.exe from system32 and not syswow64 as would otherwise happen
|
||||||
|
PVOID wow64FsRedirVal=NULL;
|
||||||
|
if (extractType == ARM64)
|
||||||
|
Wow64DisableWow64FsRedirection(&wow64FsRedirVal);
|
||||||
|
|
||||||
// start the installer
|
// start the installer
|
||||||
STARTUPINFO startupInfo={sizeof(startupInfo)};
|
STARTUPINFO startupInfo={sizeof(startupInfo)};
|
||||||
PROCESS_INFORMATION processInfo;
|
PROCESS_INFORMATION processInfo;
|
||||||
memset(&processInfo,0,sizeof(processInfo));
|
memset(&processInfo,0,sizeof(processInfo));
|
||||||
if (!CreateProcess(NULL,cmdLine,NULL,NULL,TRUE,0,NULL,NULL,&startupInfo,&processInfo))
|
BOOL ret=CreateProcess(NULL,cmdLine,NULL,NULL,TRUE,0,NULL,NULL,&startupInfo,&processInfo);
|
||||||
|
if (extractType == ARM64)
|
||||||
|
Wow64RevertWow64FsRedirection(wow64FsRedirVal);
|
||||||
|
if (!ret)
|
||||||
{
|
{
|
||||||
DeleteFile(msiName);
|
DeleteFile(msiName);
|
||||||
if (!bQuiet)
|
if (!bQuiet)
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ END
|
|||||||
|
|
||||||
IDR_MSI_FILE32 MSI_FILE "Temp\\Setup32.msi_"
|
IDR_MSI_FILE32 MSI_FILE "Temp\\Setup32.msi_"
|
||||||
IDR_MSI_FILE64 MSI_FILE "Temp\\Setup64.msi_"
|
IDR_MSI_FILE64 MSI_FILE "Temp\\Setup64.msi_"
|
||||||
|
IDR_MSI_FILEARM64 MSI_FILE "Temp\\SetupARM64.msi_"
|
||||||
IDR_MSI_CHECKSUM MSI_FILE "msichecksum.bin"
|
IDR_MSI_CHECKSUM MSI_FILE "msichecksum.bin"
|
||||||
|
|
||||||
|
|
||||||
@@ -126,7 +127,7 @@ END
|
|||||||
|
|
||||||
STRINGTABLE
|
STRINGTABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_HELP "Open-Shell Setup will install Open-Shell on your computer. Possible command lines:\n <no command line> - runs the installer normally\n extract32 - extracts the 32-bit MSI\n extract64 - extracts the 64-bit MSI\n help, /? - shows the command line help\n <some msiexec options> - the options are passed to msiexec\n * if the options contain %MSI% (all caps) the token is replaced by the name of the extracted MSI file\n * if %MSI% is not found, the setup runs ""msiexec /i <MSI file> <some msiexec options>""\n * run msiexec with no parameters to see the full list of msiexec options\n\nExamples:\n /qn - runs the installer in quiet mode\n /x %MSI% /qb - uninstalls the product in basic UI level\n /f %MSI% - repairs the product\n /l* log.txt - runs the installer and logs the process in the log.txt file\n /qn ADDLOCAL=ClassicExplorer - installs only Classic Explorer in quiet mode\n /qn ADDLOCAL=StartMenu APPLICATIONFOLDER=C:\\OpenShell - installs only Open-Shell Start Menu in quiet mode in the folder C:\\OpenShell\n ADDLOCAL=StartMenu,ClassicIE - runs the installer in full UI mode with Open-Shell Start Menu and Classic IE checked by default"
|
IDS_HELP "Open-Shell Setup will install Open-Shell on your computer. Possible command lines:\n <no command line> - runs the installer normally\n extract32 - extracts the 32-bit MSI\n extract64 - extracts the 64-bit MSI\n extractARM64 - extracts the ARM64 MSI\n help, /? - shows the command line help\n <some msiexec options> - the options are passed to msiexec\n * if the options contain %MSI% (all caps) the token is replaced by the name of the extracted MSI file\n * if %MSI% is not found, the setup runs ""msiexec /i <MSI file> <some msiexec options>""\n * run msiexec with no parameters to see the full list of msiexec options\n\nExamples:\n /qn - runs the installer in quiet mode\n /x %MSI% /qb - uninstalls the product in basic UI level\n /f %MSI% - repairs the product\n /l* log.txt - runs the installer and logs the process in the log.txt file\n /qn ADDLOCAL=ClassicExplorer - installs only Classic Explorer in quiet mode\n /qn ADDLOCAL=StartMenu APPLICATIONFOLDER=C:\\OpenShell - installs only Open-Shell Start Menu in quiet mode in the folder C:\\OpenShell\n ADDLOCAL=StartMenu,ClassicIE - runs the installer in full UI mode with Open-Shell Start Menu and Classic IE checked by default"
|
||||||
END
|
END
|
||||||
|
|
||||||
#endif // English (U.S.) resources
|
#endif // English (U.S.) resources
|
||||||
|
|||||||
@@ -64,6 +64,7 @@
|
|||||||
<None Include="msichecksum.bin" />
|
<None Include="msichecksum.bin" />
|
||||||
<None Include="Temp\Setup32.msi_" />
|
<None Include="Temp\Setup32.msi_" />
|
||||||
<None Include="Temp\Setup64.msi_" />
|
<None Include="Temp\Setup64.msi_" />
|
||||||
|
<None Include="Temp\SetupARM64.msi_" />
|
||||||
<None Include="__MakeFinal.bat" />
|
<None Include="__MakeFinal.bat" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -61,5 +61,6 @@
|
|||||||
<None Include="Temp\Setup32.msi_" />
|
<None Include="Temp\Setup32.msi_" />
|
||||||
<None Include="Temp\Setup64.msi_" />
|
<None Include="Temp\Setup64.msi_" />
|
||||||
<None Include="msichecksum.bin" />
|
<None Include="msichecksum.bin" />
|
||||||
|
<None Include="Temp\SetupARM64.msi_" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
# This comment is generated by WixEdit, the specific commandline
|
# This comment is generated by WixEdit, the specific commandline
|
||||||
# arguments for the WiX Toolset are stored here.
|
# arguments for the WiX Toolset are stored here.
|
||||||
|
|
||||||
candleArgs: "<projectfile>" -out "<projectname>.wixobj" -ext WixUIExtension -ext WixUtilExtension -dx64=0
|
candleArgs: "<projectfile>" -out "<projectname>.wixobj" -ext WixUIExtension -ext WixUtilExtension -dx64=0 -dARM64=0
|
||||||
lightArgs: "<projectname>.wixobj" -out "<projectname>.msi" -ext WixUIExtension -ext WixUtilExtension -loc OpenShellText-en-US.wxl
|
lightArgs: "<projectname>.wixobj" -out "<projectname>.msi" -ext WixUIExtension -ext WixUtilExtension -loc OpenShellText-en-US.wxl
|
||||||
-->
|
-->
|
||||||
<?if $(var.x64)=1 ?>
|
<?if $(var.x64)=1 ?>
|
||||||
@@ -11,6 +11,11 @@
|
|||||||
<?define CS_PLATFORM = "x64"?>
|
<?define CS_PLATFORM = "x64"?>
|
||||||
<?define CS_PROGRAM_FILES = "ProgramFiles64Folder"?>
|
<?define CS_PROGRAM_FILES = "ProgramFiles64Folder"?>
|
||||||
<?define CS_WIN64 = "yes"?>
|
<?define CS_WIN64 = "yes"?>
|
||||||
|
<?elseif $(var.ARM64)=1 ?>
|
||||||
|
<?define CS_UPGRADE = "BECF7DE9-53D0-41E7-92DC-0EF4ACCCD867"?>
|
||||||
|
<?define CS_PLATFORM = "arm64"?>
|
||||||
|
<?define CS_PROGRAM_FILES = "ProgramFiles64Folder"?>
|
||||||
|
<?define CS_WIN64 = "yes"?>
|
||||||
<?else ?>
|
<?else ?>
|
||||||
<?define CS_UPGRADE = "EB7DA1D9-44EA-43BF-8A08-0B103007D4F2"?>
|
<?define CS_UPGRADE = "EB7DA1D9-44EA-43BF-8A08-0B103007D4F2"?>
|
||||||
<?define CS_PLATFORM = "x86"?>
|
<?define CS_PLATFORM = "x86"?>
|
||||||
@@ -22,9 +27,13 @@
|
|||||||
<Package Description="Open-Shell" Comments="Start Menu Replacement" InstallerVersion="500" Compressed="yes" Platform="$(var.CS_PLATFORM)" />
|
<Package Description="Open-Shell" Comments="Start Menu Replacement" InstallerVersion="500" Compressed="yes" Platform="$(var.CS_PLATFORM)" />
|
||||||
<Media Id="1" Cabinet="cshell.cab" EmbedCab="yes" CompressionLevel="high" />
|
<Media Id="1" Cabinet="cshell.cab" EmbedCab="yes" CompressionLevel="high" />
|
||||||
<Media Id="2" Cabinet="simple.cab" EmbedCab="yes" CompressionLevel="high" />
|
<Media Id="2" Cabinet="simple.cab" EmbedCab="yes" CompressionLevel="high" />
|
||||||
<?if $(var.x64)=0 ?>
|
<PropertyRef Id="WIX_NATIVE_MACHINE" />
|
||||||
|
<?if $(var.x64)=0 And $(var.ARM64)=0 ?>
|
||||||
<Condition Message="!(loc.Error32bit)">not Msix64</Condition>
|
<Condition Message="!(loc.Error32bit)">not Msix64</Condition>
|
||||||
<?endif ?>
|
<?endif ?>
|
||||||
|
<?if $(var.x64)=1 ?>
|
||||||
|
<Condition Message="!(loc.Error64bit)">NOT (WIX_NATIVE_MACHINE AND WIX_NATIVE_MACHINE="43620")</Condition>
|
||||||
|
<?endif ?>
|
||||||
<Condition Message="!(loc.ErrorWin7)">VersionNT>=601</Condition>
|
<Condition Message="!(loc.ErrorWin7)">VersionNT>=601</Condition>
|
||||||
<Condition Message="!(loc.ErrorNewVersion)">NOT NEWERPRODUCTFOUND OR Installed</Condition>
|
<Condition Message="!(loc.ErrorNewVersion)">NOT NEWERPRODUCTFOUND OR Installed</Condition>
|
||||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||||
@@ -59,7 +68,7 @@
|
|||||||
<?endif ?>
|
<?endif ?>
|
||||||
<Feature Id="ClassicExplorer" Level="1" Title="!(loc.ExplorerTitle)" ConfigurableDirectory="APPLICATIONFOLDER" AllowAdvertise="no" Description="!(loc.ExplorerDesc)">
|
<Feature Id="ClassicExplorer" Level="1" Title="!(loc.ExplorerTitle)" ConfigurableDirectory="APPLICATIONFOLDER" AllowAdvertise="no" Description="!(loc.ExplorerDesc)">
|
||||||
<ComponentRef Id="ClassicExplorer32.dll" />
|
<ComponentRef Id="ClassicExplorer32.dll" />
|
||||||
<?if $(var.x64)=1 ?>
|
<?if $(var.x64)=1 Or $(var.ARM64)=1 ?>
|
||||||
<ComponentRef Id="ClassicExplorer64.dll" />
|
<ComponentRef Id="ClassicExplorer64.dll" />
|
||||||
<?endif ?>
|
<?endif ?>
|
||||||
<ComponentRef Id="ExplorerL10N.ini" />
|
<ComponentRef Id="ExplorerL10N.ini" />
|
||||||
@@ -71,7 +80,7 @@
|
|||||||
<ComponentRef Id="StartMenuDLL.dll" />
|
<ComponentRef Id="StartMenuDLL.dll" />
|
||||||
<ComponentRef Id="StartMenuL10N.ini" />
|
<ComponentRef Id="StartMenuL10N.ini" />
|
||||||
<ComponentRef Id="StartMenuHelper32.dll" />
|
<ComponentRef Id="StartMenuHelper32.dll" />
|
||||||
<?if $(var.x64)=1 ?>
|
<?if $(var.x64)=1 Or $(var.ARM64)=1 ?>
|
||||||
<ComponentRef Id="StartMenuHelper64.dll" />
|
<ComponentRef Id="StartMenuHelper64.dll" />
|
||||||
<?endif ?>
|
<?endif ?>
|
||||||
<ComponentRef Id="StartScreenLink" />
|
<ComponentRef Id="StartScreenLink" />
|
||||||
@@ -98,7 +107,7 @@
|
|||||||
<Feature Id="ClassicIE" Level="2" Title="!(loc.IETitle)" ConfigurableDirectory="APPLICATIONFOLDER" AllowAdvertise="no" Description="!(loc.IEDesc)">
|
<Feature Id="ClassicIE" Level="2" Title="!(loc.IETitle)" ConfigurableDirectory="APPLICATIONFOLDER" AllowAdvertise="no" Description="!(loc.IEDesc)">
|
||||||
<ComponentRef Id="ClassicIEDLL_32.dll" />
|
<ComponentRef Id="ClassicIEDLL_32.dll" />
|
||||||
<ComponentRef Id="ClassicIE_32.exe" />
|
<ComponentRef Id="ClassicIE_32.exe" />
|
||||||
<?if $(var.x64)=1 ?>
|
<?if $(var.x64)=1 Or $(var.ARM64)=1 ?>
|
||||||
<ComponentRef Id="ClassicIEDLL_64.dll" />
|
<ComponentRef Id="ClassicIEDLL_64.dll" />
|
||||||
<ComponentRef Id="ClassicIE_64.exe" />
|
<ComponentRef Id="ClassicIE_64.exe" />
|
||||||
<?endif ?>
|
<?endif ?>
|
||||||
@@ -443,6 +452,25 @@
|
|||||||
<Component Id="StartMenuDLL.dll" Guid="C5226061-17DE-4DF6-A088-CC84F6A7BE84" Win64="yes" DiskId="2">
|
<Component Id="StartMenuDLL.dll" Guid="C5226061-17DE-4DF6-A088-CC84F6A7BE84" Win64="yes" DiskId="2">
|
||||||
<File Id="StartMenuDLL.dll" Checksum="yes" KeyPath="yes" Source="Output\x64\StartMenuDLL.dll" Vital="yes" />
|
<File Id="StartMenuDLL.dll" Checksum="yes" KeyPath="yes" Source="Output\x64\StartMenuDLL.dll" Vital="yes" />
|
||||||
</Component>
|
</Component>
|
||||||
|
<?elseif $(var.ARM64)=1 ?>
|
||||||
|
<Component Id="ClassicExplorer64.dll" Guid="2C25783D-394D-4E5B-9259-1650F561E2CE" Win64="yes" DiskId="2">
|
||||||
|
<File Id="ClassicExplorer64.dll" KeyPath="yes" Source="Output\ARM64\ClassicExplorer64.dll" Checksum="yes" SelfRegCost="0" Vital="yes" />
|
||||||
|
</Component>
|
||||||
|
<Component Id="ClassicIEDLL_64.dll" Guid="43E62408-40EB-4FBB-98CC-7463F5B78266" Win64="yes" DiskId="2">
|
||||||
|
<File Id="ClassicIEDLL_64.dll" KeyPath="yes" Source="Output\ARM64\ClassicIEDLL_64.dll" Checksum="yes" SelfRegCost="0" Vital="yes" />
|
||||||
|
</Component>
|
||||||
|
<Component Id="ClassicIE_64.exe" Guid="E822E720-8477-4511-AD93-172313EFA636" Win64="yes" DiskId="2">
|
||||||
|
<File Id="ClassicIE_64.exe" KeyPath="yes" Source="Output\ARM64\ClassicIE_64.exe" Checksum="yes" Vital="yes" />
|
||||||
|
</Component>
|
||||||
|
<Component Id="StartMenu.exe" Guid="FC69E080-4232-4161-A1E5-20E255FB2F6B" Win64="yes" DiskId="2">
|
||||||
|
<File Id="StartMenu.exe" KeyPath="yes" Checksum="yes" Source="Output\ARM64\StartMenu.exe" Vital="yes" />
|
||||||
|
<Shortcut Id="StartMenuSettings" Name="Start Menu Settings" Advertise="no" Arguments="-settings" Description="!(loc.StartSettingsDesc)" Target="[APPLICATIONFOLDER]StartMenu.exe" WorkingDirectory="APPLICATIONFOLDER">
|
||||||
|
<ShortcutProperty Key="System.AppUserModel.ID" Value="OpenShell.StartMenu.Settings" />
|
||||||
|
</Shortcut>
|
||||||
|
</Component>
|
||||||
|
<Component Id="StartMenuDLL.dll" Guid="ED99E7BC-9F2C-4A96-A942-6E7D41628AB0" Win64="yes" DiskId="2">
|
||||||
|
<File Id="StartMenuDLL.dll" Checksum="yes" KeyPath="yes" Source="Output\ARM64\StartMenuDLL.dll" Vital="yes" />
|
||||||
|
</Component>
|
||||||
<?else ?>
|
<?else ?>
|
||||||
<Component Id="StartMenu.exe" Guid="F74C0FF3-A8C0-4B6E-AFD2-F9467DE4D90B" Win64="no" DiskId="2">
|
<Component Id="StartMenu.exe" Guid="F74C0FF3-A8C0-4B6E-AFD2-F9467DE4D90B" Win64="no" DiskId="2">
|
||||||
<File Id="StartMenu.exe" KeyPath="yes" Checksum="yes" Source="Output\StartMenu.exe" Vital="yes" />
|
<File Id="StartMenu.exe" KeyPath="yes" Checksum="yes" Source="Output\StartMenu.exe" Vital="yes" />
|
||||||
@@ -624,6 +652,11 @@
|
|||||||
<File Id="StartMenuHelper64.dll" KeyPath="yes" Source="Output\x64\StartMenuHelper64.dll" Checksum="yes" SelfRegCost="0" Vital="yes" />
|
<File Id="StartMenuHelper64.dll" KeyPath="yes" Source="Output\x64\StartMenuHelper64.dll" Checksum="yes" SelfRegCost="0" Vital="yes" />
|
||||||
</Component>
|
</Component>
|
||||||
<?endif ?>
|
<?endif ?>
|
||||||
|
<?if $(var.ARM64)=1 ?>
|
||||||
|
<Component Id="StartMenuHelper64.dll" Guid="108B11E8-2F76-4C37-A274-62BAE6240490" Win64="yes" DiskId="2">
|
||||||
|
<File Id="StartMenuHelper64.dll" KeyPath="yes" Source="Output\ARM64\StartMenuHelper64.dll" Checksum="yes" SelfRegCost="0" Vital="yes" />
|
||||||
|
</Component>
|
||||||
|
<?endif ?>
|
||||||
</DirectoryRef>
|
</DirectoryRef>
|
||||||
<Icon Id="icon.ico" SourceFile="..\Setup\OpenShell.ico" />
|
<Icon Id="icon.ico" SourceFile="..\Setup\OpenShell.ico" />
|
||||||
<Property Id="ARPPRODUCTICON" Value="icon.ico" />
|
<Property Id="ARPPRODUCTICON" Value="icon.ico" />
|
||||||
|
|||||||
61
Src/Setup/SetupHelper/SetupHelper.rc
Normal file
61
Src/Setup/SetupHelper/SetupHelper.rc
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
// Microsoft Visual C++ generated resource script.
|
||||||
|
//
|
||||||
|
|
||||||
|
#define APSTUDIO_READONLY_SYMBOLS
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// Generated from the TEXTINCLUDE 2 resource.
|
||||||
|
//
|
||||||
|
#include "winres.h"
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
#undef APSTUDIO_READONLY_SYMBOLS
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// English (U.S.) resources
|
||||||
|
|
||||||
|
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||||
|
#ifdef _WIN32
|
||||||
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||||
|
#pragma code_page(1252)
|
||||||
|
#endif //_WIN32
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// Version
|
||||||
|
//
|
||||||
|
|
||||||
|
VS_VERSION_INFO VERSIONINFO
|
||||||
|
FILEVERSION _PRODUCT_VERSION
|
||||||
|
PRODUCTVERSION _PRODUCT_VERSION
|
||||||
|
FILEFLAGSMASK 0x3fL
|
||||||
|
#ifdef _DEBUG
|
||||||
|
FILEFLAGS 0x1L
|
||||||
|
#else
|
||||||
|
FILEFLAGS 0x0L
|
||||||
|
#endif
|
||||||
|
FILEOS 0x4L
|
||||||
|
FILETYPE 0x2L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904e4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "CompanyName", "Open-Shell"
|
||||||
|
VALUE "FileDescription", "Setup helper"
|
||||||
|
VALUE "FileVersion", _PRODUCT_VERSION_STR
|
||||||
|
VALUE "InternalName", "SetupHelper.exe"
|
||||||
|
VALUE "LegalCopyright", "Copyright (C) 2017-2018, The Open-Shell Team"
|
||||||
|
VALUE "OriginalFilename", "SetupHelper.exe"
|
||||||
|
VALUE "ProductName", "Open-Shell"
|
||||||
|
VALUE "ProductVersion", _PRODUCT_VERSION_STR
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x409, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
#endif // English (U.S.) resources
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
@@ -38,6 +38,9 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="SetupHelper.cpp" />
|
<ClCompile Include="SetupHelper.cpp" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="SetupHelper.rc" />
|
||||||
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Manifest Include="SetupHelper.manifest" />
|
<Manifest Include="SetupHelper.manifest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ int CalcMsiChecksum( wchar_t *const *params, int count )
|
|||||||
|
|
||||||
// load files
|
// load files
|
||||||
wchar_t path1[_MAX_PATH];
|
wchar_t path1[_MAX_PATH];
|
||||||
std::vector<unsigned char> buf1, buf2;
|
std::vector<unsigned char> buf1, buf2, buf3;
|
||||||
Sprintf(path1,_countof(path1),L"%s\\Setup32.msi",params[1]);
|
Sprintf(path1,_countof(path1),L"%s\\Setup32.msi",params[1]);
|
||||||
LoadFile(path1,buf1);
|
LoadFile(path1,buf1);
|
||||||
if (buf1.empty())
|
if (buf1.empty())
|
||||||
@@ -102,20 +102,30 @@ int CalcMsiChecksum( wchar_t *const *params, int count )
|
|||||||
Printf("Failed to open file %s\n",path2);
|
Printf("Failed to open file %s\n",path2);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
wchar_t path3[_MAX_PATH];
|
||||||
|
Sprintf(path3,_countof(path3),L"%s\\SetupARM64.msi",params[1]);
|
||||||
|
LoadFile(path3,buf3);
|
||||||
|
if (buf3.empty())
|
||||||
|
{
|
||||||
|
Printf("Failed to open file %s\n",path3);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int len1=(int)buf1.size();
|
int len1=(int)buf1.size();
|
||||||
int len2=(int)buf2.size();
|
int len2=(int)buf2.size();
|
||||||
|
int len3=(int)buf3.size();
|
||||||
|
|
||||||
for (std::vector<unsigned char>::iterator it=buf1.begin();it!=buf1.end();++it)
|
for (std::vector<unsigned char>::iterator it=buf1.begin();it!=buf1.end();++it)
|
||||||
*it^=0xFF;
|
*it^=0xFF;
|
||||||
for (std::vector<unsigned char>::iterator it=buf2.begin();it!=buf2.end();++it)
|
for (std::vector<unsigned char>::iterator it=buf2.begin();it!=buf2.end();++it)
|
||||||
*it^=0xFF;
|
*it^=0xFF;
|
||||||
|
for (std::vector<unsigned char>::iterator it=buf3.begin();it!=buf3.end();++it)
|
||||||
|
*it^=0xFF;
|
||||||
|
|
||||||
// detect common blocks (assuming at least 256K in size and in the same order in both files)
|
const int BLOCK_SIZE = 256 * 1024;
|
||||||
const int BLOCK_SIZE=256*1024;
|
// detect x86/x64 common blocks (assuming at least 256K in size and in the same order in both files)
|
||||||
std::vector<Chunk> chunks;
|
std::vector<Chunk> chunks;
|
||||||
int start2=0;
|
for (int i=0,start2=0;i<len1-BLOCK_SIZE;i+=BLOCK_SIZE)
|
||||||
for (int i=0;i<len1-BLOCK_SIZE;i+=BLOCK_SIZE)
|
|
||||||
{
|
{
|
||||||
for (int j=start2;j<len2-BLOCK_SIZE;j++)
|
for (int j=start2;j<len2-BLOCK_SIZE;j++)
|
||||||
{
|
{
|
||||||
@@ -142,6 +152,35 @@ int CalcMsiChecksum( wchar_t *const *params, int count )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// detect x86/ARM64 common blocks (assuming at least 256K in size and in the same order in both files)
|
||||||
|
std::vector<Chunk> chunks2;
|
||||||
|
for (int i=0,start2=0;i<len1-BLOCK_SIZE;i+=BLOCK_SIZE)
|
||||||
|
{
|
||||||
|
for (int j=start2;j<len3-BLOCK_SIZE;j++)
|
||||||
|
{
|
||||||
|
if (memcmp(&buf1[i],&buf3[j],BLOCK_SIZE)==0)
|
||||||
|
{
|
||||||
|
Chunk chunk;
|
||||||
|
chunk.start1=i;
|
||||||
|
chunk.start2=j;
|
||||||
|
chunk.len=BLOCK_SIZE;
|
||||||
|
while (chunk.start1>0 && chunk.start2>0 && buf1[chunk.start1-1]==buf3[chunk.start2-1])
|
||||||
|
{
|
||||||
|
chunk.start1--;
|
||||||
|
chunk.start2--;
|
||||||
|
chunk.len++;
|
||||||
|
}
|
||||||
|
while (chunk.start1+chunk.len<len1 && chunk.start2+chunk.len<len3 && buf1[chunk.start1+chunk.len]==buf3[chunk.start2+chunk.len])
|
||||||
|
{
|
||||||
|
chunk.len++;
|
||||||
|
}
|
||||||
|
chunks2.push_back(chunk);
|
||||||
|
i=chunk.start1+chunk.len-1;
|
||||||
|
start2=chunk.start2+chunk.len;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// save modified 32-bit MSI
|
// save modified 32-bit MSI
|
||||||
{
|
{
|
||||||
@@ -177,9 +216,31 @@ int CalcMsiChecksum( wchar_t *const *params, int count )
|
|||||||
fclose(f);
|
fclose(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int fnvs[2];
|
// save modified ARM64 MSI
|
||||||
|
{
|
||||||
|
Strcat(path3,_countof(path3),L"_");
|
||||||
|
FILE* f=NULL;
|
||||||
|
if (_wfopen_s(&f,path3,L"wb") || !f)
|
||||||
|
{
|
||||||
|
Printf("Failed to write %s\n",path3);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
int start=0;
|
||||||
|
for (std::vector<Chunk>::const_iterator it=chunks2.begin();it!=chunks2.end();++it)
|
||||||
|
{
|
||||||
|
if (it->start2-start>0)
|
||||||
|
fwrite(&buf3[start],1,it->start2-start,f);
|
||||||
|
start=it->start2+it->len;
|
||||||
|
}
|
||||||
|
if (len3-start>0)
|
||||||
|
fwrite(&buf3[start],1,len3-start,f);
|
||||||
|
fclose(f);
|
||||||
|
}
|
||||||
|
|
||||||
|
unsigned int fnvs[3];
|
||||||
fnvs[0]=CalcFNVHash(&buf1[0],len1,FNV_HASH0);
|
fnvs[0]=CalcFNVHash(&buf1[0],len1,FNV_HASH0);
|
||||||
fnvs[1]=CalcFNVHash(&buf2[0],len2,FNV_HASH0);
|
fnvs[1]=CalcFNVHash(&buf2[0],len2,FNV_HASH0);
|
||||||
|
fnvs[2]=CalcFNVHash(&buf3[0],len3,FNV_HASH0);
|
||||||
|
|
||||||
// save fnvs and chunks
|
// save fnvs and chunks
|
||||||
{
|
{
|
||||||
@@ -193,6 +254,9 @@ int CalcMsiChecksum( wchar_t *const *params, int count )
|
|||||||
int count=(int)chunks.size();
|
int count=(int)chunks.size();
|
||||||
fwrite(&count,1,4,f);
|
fwrite(&count,1,4,f);
|
||||||
fwrite(&chunks[0],sizeof(Chunk),count,f);
|
fwrite(&chunks[0],sizeof(Chunk),count,f);
|
||||||
|
count=(int)chunks2.size();
|
||||||
|
fwrite(&count,1,4,f);
|
||||||
|
fwrite(&chunks2[0],sizeof(Chunk),count,f);
|
||||||
fclose(f);
|
fclose(f);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -841,7 +905,7 @@ static HRESULT CALLBACK TaskDialogCallback( HWND hwnd, UINT uNotification, WPARA
|
|||||||
// Open-Shell utility - multiple utilities for building and maintaining Open-Shell
|
// Open-Shell utility - multiple utilities for building and maintaining Open-Shell
|
||||||
// Usage:
|
// Usage:
|
||||||
// no parameters - saves a troubleshooting log
|
// no parameters - saves a troubleshooting log
|
||||||
// crcmsi <msi path> // creates a file with checksum of both msi files
|
// crcmsi <msi path> // creates a file with checksum of all msi files
|
||||||
// makeEN <explorer dll> <start menu dll> <ie dll> <update exe> // extracts the localization resources and creates a sample en-US.DLL
|
// makeEN <explorer dll> <start menu dll> <ie dll> <update exe> // extracts the localization resources and creates a sample en-US.DLL
|
||||||
// extract <dll> <csv> // extracts the string table, the dialog text, and the L10N text from a DLL and stores it in a CSV
|
// extract <dll> <csv> // extracts the string table, the dialog text, and the L10N text from a DLL and stores it in a CSV
|
||||||
// extract en-us.dll <dll> <csv> // extracts the string table, the dialog text, and the L10N text from two DLL and stores it in a CSV
|
// extract en-us.dll <dll> <csv> // extracts the string table, the dialog text, and the L10N text from two DLL and stores it in a CSV
|
||||||
|
|||||||
@@ -207,6 +207,44 @@ BEGIN
|
|||||||
END
|
END
|
||||||
#endif // APSTUDIO_INVOKED
|
#endif // APSTUDIO_INVOKED
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// Version
|
||||||
|
//
|
||||||
|
|
||||||
|
VS_VERSION_INFO VERSIONINFO
|
||||||
|
FILEVERSION _PRODUCT_VERSION
|
||||||
|
PRODUCTVERSION _PRODUCT_VERSION
|
||||||
|
FILEFLAGSMASK 0x3fL
|
||||||
|
#ifdef _DEBUG
|
||||||
|
FILEFLAGS 0x1L
|
||||||
|
#else
|
||||||
|
FILEFLAGS 0x0L
|
||||||
|
#endif
|
||||||
|
FILEOS 0x4L
|
||||||
|
FILETYPE 0x2L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904e4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "CompanyName", "Open-Shell"
|
||||||
|
VALUE "FileDescription", "Utility"
|
||||||
|
VALUE "FileVersion", _PRODUCT_VERSION_STR
|
||||||
|
VALUE "InternalName", "Utility.exe"
|
||||||
|
VALUE "LegalCopyright", "Copyright (C) 2017-2018, The Open-Shell Team"
|
||||||
|
VALUE "OriginalFilename", "Utility.exe"
|
||||||
|
VALUE "ProductName", "Open-Shell"
|
||||||
|
VALUE "ProductVersion", _PRODUCT_VERSION_STR
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x409, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
#endif // English (U.S.) resources
|
#endif // English (U.S.) resources
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +13,10 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -63,6 +71,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="Utility.rc">
|
<ResourceCompile Include="Utility.rc">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
#define IDS_ERR_CORRUPTED 102
|
#define IDS_ERR_CORRUPTED 102
|
||||||
#define IDR_MSI_FILE32 132
|
#define IDR_MSI_FILE32 132
|
||||||
#define IDR_MSI_FILE64 164
|
#define IDR_MSI_FILE64 164
|
||||||
|
#define IDR_MSI_FILEARM64 165
|
||||||
#define IDS_ERR_INTERNAL 166
|
#define IDS_ERR_INTERNAL 166
|
||||||
#define IDS_ERR_EXTRACT 167
|
#define IDS_ERR_EXTRACT 167
|
||||||
#define IDR_MSI_CHECKSUM 167
|
#define IDR_MSI_CHECKSUM 167
|
||||||
|
|||||||
@@ -52,14 +52,6 @@ END
|
|||||||
// Version
|
// Version
|
||||||
//
|
//
|
||||||
|
|
||||||
// Solution loading fail-safe
|
|
||||||
#ifndef _PRODUCT_VERSION
|
|
||||||
#define _PRODUCT_VERSION 4.4.102
|
|
||||||
#endif
|
|
||||||
#ifndef _PRODUCT_VERSION_STR
|
|
||||||
#define _PRODUCT_VERSION_STR "4.4.102"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION _PRODUCT_VERSION
|
FILEVERSION _PRODUCT_VERSION
|
||||||
PRODUCTVERSION _PRODUCT_VERSION
|
PRODUCTVERSION _PRODUCT_VERSION
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +13,10 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +25,10 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
|||||||
@@ -526,16 +526,16 @@ void CStartButton::LoadBitmap( void )
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
int dpi=GetDpi(GetParent());
|
||||||
bool bResource=false;
|
bool bResource=false;
|
||||||
std::vector<unsigned int> buttonAnim;
|
std::vector<unsigned int> buttonAnim;
|
||||||
if (*path)
|
if (*path)
|
||||||
{
|
{
|
||||||
m_Bitmap=LoadImageFile(path,&size,true,true,&buttonAnim);
|
m_Bitmap=LoadImageFile(path,&size,true,true,&buttonAnim,dpi);
|
||||||
}
|
}
|
||||||
if (!m_Bitmap)
|
if (!m_Bitmap)
|
||||||
{
|
{
|
||||||
int id;
|
int id;
|
||||||
int dpi=GetDpi(GetParent());
|
|
||||||
if (dpi<120)
|
if (dpi<120)
|
||||||
id=IDB_BUTTON96;
|
id=IDB_BUTTON96;
|
||||||
else if (dpi<144)
|
else if (dpi<144)
|
||||||
|
|||||||
@@ -67,6 +67,8 @@ static SIZE g_TaskbarTextureSize;
|
|||||||
static TTaskbarTile g_TaskbarTileH, g_TaskbarTileV;
|
static TTaskbarTile g_TaskbarTileH, g_TaskbarTileV;
|
||||||
static RECT g_TaskbarMargins;
|
static RECT g_TaskbarMargins;
|
||||||
int g_CurrentCSMTaskbar=-1, g_CurrentWSMTaskbar=-1;
|
int g_CurrentCSMTaskbar=-1, g_CurrentWSMTaskbar=-1;
|
||||||
|
// ExplorerPatcher taskbar
|
||||||
|
static bool g_epTaskbar = false;
|
||||||
|
|
||||||
static void FindWindowsMenu( void );
|
static void FindWindowsMenu( void );
|
||||||
static void RecreateStartButton( size_t taskbarId );
|
static void RecreateStartButton( size_t taskbarId );
|
||||||
@@ -1216,14 +1218,36 @@ void EnableHotkeys( THotkeys enable )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool IsTouchTaskbar(void)
|
||||||
|
{
|
||||||
|
if (!IsWin11())
|
||||||
|
return false;
|
||||||
|
|
||||||
|
CRegKey regKey;
|
||||||
|
if (regKey.Open(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer") != ERROR_SUCCESS)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
DWORD val;
|
||||||
|
return regKey.QueryDWORDValue(L"TabletPostureTaskbar", val) == ERROR_SUCCESS && val;
|
||||||
|
}
|
||||||
|
|
||||||
static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPOS* pPos)
|
static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPOS* pPos)
|
||||||
{
|
{
|
||||||
if (IsStartButtonSmallIcons(taskBar->taskbarId) != IsTaskbarSmallIcons())
|
if (IsStartButtonSmallIcons(taskBar->taskbarId) != IsTaskbarSmallIcons())
|
||||||
RecreateStartButton(taskBar->taskbarId);
|
RecreateStartButton(taskBar->taskbarId);
|
||||||
|
|
||||||
RECT rcTask;
|
RECT rcTask;
|
||||||
|
GetWindowRect(taskBar->taskBar, &rcTask);
|
||||||
|
if (IsTouchTaskbar())
|
||||||
|
{
|
||||||
|
if (RECT rc; GetWindowRgnBox(taskBar->taskBar, &rc) != ERROR)
|
||||||
|
{
|
||||||
|
MapWindowPoints(taskBar->taskBar, NULL, (POINT*)&rc, 2);
|
||||||
|
rcTask = rc;
|
||||||
|
}
|
||||||
|
}
|
||||||
MONITORINFO info;
|
MONITORINFO info;
|
||||||
UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, &rcTask);
|
UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, NULL);
|
||||||
DWORD buttonFlags = SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE;
|
DWORD buttonFlags = SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE;
|
||||||
if (IsWindowVisible(taskBar->taskBar))
|
if (IsWindowVisible(taskBar->taskBar))
|
||||||
buttonFlags |= SWP_SHOWWINDOW;
|
buttonFlags |= SWP_SHOWWINDOW;
|
||||||
@@ -1320,7 +1344,7 @@ static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPO
|
|||||||
|
|
||||||
// Start button on Win11 is a bit shifted to the right
|
// Start button on Win11 is a bit shifted to the right
|
||||||
// We will shift our Aero button to cover original button
|
// We will shift our Aero button to cover original button
|
||||||
if (IsWin11() && (x == info.rcMonitor.left) && (GetStartButtonType() == START_BUTTON_AERO))
|
if (IsWin11() && (x == info.rcMonitor.left) && (GetStartButtonType() == START_BUTTON_AERO) && !g_epTaskbar)
|
||||||
x += ScaleForDpi(taskBar->taskBar, 6);
|
x += ScaleForDpi(taskBar->taskBar, 6);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1600,7 +1624,7 @@ static void ComputeTaskbarColors( int *data )
|
|||||||
{
|
{
|
||||||
bool bDefLook;
|
bool bDefLook;
|
||||||
int look=GetSettingInt(L"TaskbarLook",bDefLook);
|
int look=GetSettingInt(L"TaskbarLook",bDefLook);
|
||||||
if (GetWinVersion()<WIN_VER_WIN10 || look==TASKBAR_AEROGLASS || (look==TASKBAR_TRANSPARENT && g_TaskbarTexture))
|
if (GetWinVersion()<WIN_VER_WIN10 || !IsAppThemed() || look==TASKBAR_AEROGLASS || (look==TASKBAR_TRANSPARENT && g_TaskbarTexture))
|
||||||
{
|
{
|
||||||
memset(data,0,16);
|
memset(data,0,16);
|
||||||
}
|
}
|
||||||
@@ -1848,6 +1872,7 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam
|
|||||||
ComputeTaskbarColors(data);
|
ComputeTaskbarColors(data);
|
||||||
WINCOMPATTRDATA attrData={0x13,&data,sizeof(data)};
|
WINCOMPATTRDATA attrData={0x13,&data,sizeof(data)};
|
||||||
SetWindowCompositionAttribute(hWnd,&attrData);
|
SetWindowCompositionAttribute(hWnd,&attrData);
|
||||||
|
UpdateTaskBars(TASKBAR_UPDATE_TEXTURE);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
if ((uMsg==WM_DWMCOLORIZATIONCOLORCHANGED || uMsg==WM_SETTINGCHANGE) && taskBar && taskBar->bCustomLook && SetWindowCompositionAttribute && GetWinVersion()<WIN_VER_WIN10)
|
if ((uMsg==WM_DWMCOLORIZATIONCOLORCHANGED || uMsg==WM_SETTINGCHANGE) && taskBar && taskBar->bCustomLook && SetWindowCompositionAttribute && GetWinVersion()<WIN_VER_WIN10)
|
||||||
@@ -1908,7 +1933,7 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam
|
|||||||
WINCOMPATTRDATA attrData={0x13,&data,sizeof(data)};
|
WINCOMPATTRDATA attrData={0x13,&data,sizeof(data)};
|
||||||
SetWindowCompositionAttribute(hWnd,&attrData);
|
SetWindowCompositionAttribute(hWnd,&attrData);
|
||||||
}
|
}
|
||||||
if (g_TaskbarTexture && IsAppThemed())
|
if (g_TaskbarTexture)
|
||||||
{
|
{
|
||||||
// draw taskbar background (behind start button and separators)
|
// draw taskbar background (behind start button and separators)
|
||||||
PAINTSTRUCT ps;
|
PAINTSTRUCT ps;
|
||||||
@@ -2359,12 +2384,19 @@ void UpdateTaskBars( TUpdateTaskbar update )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (GetWinVersion()<WIN_VER_WIN10 && (!bDefColor || !bDefOpacity))
|
else if ((GetWinVersion()<WIN_VER_WIN10 && (!bDefColor || !bDefOpacity)) || !IsAppThemed())
|
||||||
{
|
{
|
||||||
if (bDefColor && GetWinVersion()>WIN_VER_WIN7)
|
if (bDefColor && GetWinVersion()>WIN_VER_WIN7)
|
||||||
{
|
{
|
||||||
color=GetSystemGlassColor8();
|
if (IsAppThemed())
|
||||||
color=((color&0xFF)<<16)|(color&0xFF00)|((color>>16)&0xFF);
|
{
|
||||||
|
color=GetSystemGlassColor8();
|
||||||
|
color=((color&0xFF)<<16)|(color&0xFF00)|((color>>16)&0xFF);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
color=GetSysColor(COLOR_BTNFACE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
BITMAPINFO bi={0};
|
BITMAPINFO bi={0};
|
||||||
bi.bmiHeader.biSize=sizeof(BITMAPINFOHEADER);
|
bi.bmiHeader.biSize=sizeof(BITMAPINFOHEADER);
|
||||||
@@ -2750,6 +2782,17 @@ static void WINAPI SHFillRectClr2( HDC hdc, const RECT *pRect, COLORREF color )
|
|||||||
g_SHFillRectClr(hdc,pRect,color);
|
g_SHFillRectClr(hdc,pRect,color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static IatHookData* g_ExtTextOutWHook = nullptr;
|
||||||
|
|
||||||
|
// used by ExplorerPatcher's custom implementation of `SHFillRectClr`
|
||||||
|
static BOOL WINAPI ExtTextOutW2(HDC hdc, int X, int Y, UINT fuOptions, const RECT* lprc, LPCWSTR lpString, UINT cbCount, const INT* lpDx)
|
||||||
|
{
|
||||||
|
if (fuOptions != ETO_OPAQUE || lpString || cbCount || lpDx || !g_CurrentTaskList || !g_TaskbarTexture || GetCurrentThreadId() != g_TaskbarThreadId)
|
||||||
|
return ExtTextOutW(hdc, X, Y, fuOptions, lprc, lpString, cbCount, lpDx);
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
static HRESULT STDAPICALLTYPE DrawThemeBackground2( HTHEME hTheme, HDC hdc, int iPartId, int iStateId, LPCRECT pRect, LPCRECT pClipRect )
|
static HRESULT STDAPICALLTYPE DrawThemeBackground2( HTHEME hTheme, HDC hdc, int iPartId, int iStateId, LPCRECT pRect, LPCRECT pClipRect )
|
||||||
{
|
{
|
||||||
if (g_CurrentTaskList && g_TaskbarTexture && iPartId==1 && iStateId==0 && GetCurrentThreadId()==g_TaskbarThreadId)
|
if (g_CurrentTaskList && g_TaskbarTexture && iPartId==1 && iStateId==0 && GetCurrentThreadId()==g_TaskbarThreadId)
|
||||||
@@ -2934,6 +2977,15 @@ static void InitStartMenuDLL( void )
|
|||||||
if (GetSettingBool(L"CustomTaskbar"))
|
if (GetSettingBool(L"CustomTaskbar"))
|
||||||
{
|
{
|
||||||
auto module=GetModuleHandle(L"taskbar.dll");
|
auto module=GetModuleHandle(L"taskbar.dll");
|
||||||
|
if (!module)
|
||||||
|
{
|
||||||
|
module = GetModuleHandle(L"ep_taskbar.5.dll");
|
||||||
|
if (!module)
|
||||||
|
module = GetModuleHandle(L"ep_taskbar.2.dll");
|
||||||
|
|
||||||
|
if (module)
|
||||||
|
g_epTaskbar = true;
|
||||||
|
}
|
||||||
if (!module)
|
if (!module)
|
||||||
module=GetModuleHandle(NULL);
|
module=GetModuleHandle(NULL);
|
||||||
|
|
||||||
@@ -2953,6 +3005,10 @@ static void InitStartMenuDLL( void )
|
|||||||
g_StretchDIBitsHook=SetIatHook(module,"gdi32.dll","StretchDIBits",StretchDIBits2);
|
g_StretchDIBitsHook=SetIatHook(module,"gdi32.dll","StretchDIBits",StretchDIBits2);
|
||||||
if (!g_StretchDIBitsHook)
|
if (!g_StretchDIBitsHook)
|
||||||
g_StretchDIBitsHook=SetIatHook(module,"ext-ms-win-gdi-draw-l1-1-0.dll","StretchDIBits",StretchDIBits2);
|
g_StretchDIBitsHook=SetIatHook(module,"ext-ms-win-gdi-draw-l1-1-0.dll","StretchDIBits",StretchDIBits2);
|
||||||
|
|
||||||
|
// ExplorerPatcher compatibility
|
||||||
|
if (g_epTaskbar)
|
||||||
|
g_ExtTextOutWHook = SetIatHook(module, "gdi32.dll", "ExtTextOutW", ExtTextOutW2);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -2964,7 +3020,10 @@ static void InitStartMenuDLL( void )
|
|||||||
if (GetWinVersion()<=WIN_VER_WIN81)
|
if (GetWinVersion()<=WIN_VER_WIN81)
|
||||||
g_DrawThemeBackgroundHook=SetIatHook(module,"uxtheme.dll","DrawThemeBackground",DrawThemeBackground2);
|
g_DrawThemeBackgroundHook=SetIatHook(module,"uxtheme.dll","DrawThemeBackground",DrawThemeBackground2);
|
||||||
g_DrawThemeTextHook=SetIatHook(module,"uxtheme.dll","DrawThemeText",DrawThemeText2);
|
g_DrawThemeTextHook=SetIatHook(module,"uxtheme.dll","DrawThemeText",DrawThemeText2);
|
||||||
g_DrawThemeTextExHook=SetIatHook(module,"uxtheme.dll","DrawThemeTextEx",DrawThemeTextEx2);
|
if (IsAppThemed())
|
||||||
|
{
|
||||||
|
g_DrawThemeTextExHook=SetIatHook(module,"uxtheme.dll","DrawThemeTextEx",DrawThemeTextEx2);
|
||||||
|
}
|
||||||
g_DrawThemeTextCtlHook=SetIatHook(GetModuleHandle(L"comctl32.dll"),"uxtheme.dll","DrawThemeText",DrawThemeText2);
|
g_DrawThemeTextCtlHook=SetIatHook(GetModuleHandle(L"comctl32.dll"),"uxtheme.dll","DrawThemeText",DrawThemeText2);
|
||||||
if (GetWinVersion()>=WIN_VER_WIN10)
|
if (GetWinVersion()>=WIN_VER_WIN10)
|
||||||
g_SetWindowCompositionAttributeHook=SetIatHook(module,"user32.dll","SetWindowCompositionAttribute",SetWindowCompositionAttribute2);
|
g_SetWindowCompositionAttributeHook=SetIatHook(module,"user32.dll","SetWindowCompositionAttribute",SetWindowCompositionAttribute2);
|
||||||
@@ -3084,6 +3143,9 @@ static void InitStartMenuDLL( void )
|
|||||||
taskBar.chevron=FindWindowEx(tray,NULL,L"Button",NULL);
|
taskBar.chevron=FindWindowEx(tray,NULL,L"Button",NULL);
|
||||||
if (taskBar.chevron)
|
if (taskBar.chevron)
|
||||||
SetWindowSubclass(taskBar.chevron,SubclassTrayChevronProc,'CLSH',taskBar.taskbarId);
|
SetWindowSubclass(taskBar.chevron,SubclassTrayChevronProc,'CLSH',taskBar.taskbarId);
|
||||||
|
taskBar.news=FindWindowEx(g_TaskBar,NULL,L"DynamicContent2",NULL);
|
||||||
|
if (taskBar.news)
|
||||||
|
SetWindowSubclass(taskBar.news,SubclassTrayChevronProc,'CLSH',taskBar.taskbarId);
|
||||||
}
|
}
|
||||||
|
|
||||||
HandleTaskbarParts(taskBar,true);
|
HandleTaskbarParts(taskBar,true);
|
||||||
@@ -3173,11 +3235,15 @@ static void RecreateStartButton( size_t taskbarId )
|
|||||||
RECT rcTask;
|
RECT rcTask;
|
||||||
GetWindowRect(taskBar.taskBar,&rcTask);
|
GetWindowRect(taskBar.taskBar,&rcTask);
|
||||||
PostMessage(taskBar.taskBar,WM_SIZE,SIZE_RESTORED,MAKELONG(rcTask.right-rcTask.left,rcTask.bottom-rcTask.top));
|
PostMessage(taskBar.taskBar,WM_SIZE,SIZE_RESTORED,MAKELONG(rcTask.right-rcTask.left,rcTask.bottom-rcTask.top));
|
||||||
for (auto btn : taskBar.trayButtons)
|
if (taskBar.taskBar==g_TaskBar)
|
||||||
{
|
{
|
||||||
RECT rc;
|
for (auto btn : taskBar.trayButtons)
|
||||||
GetWindowRect(btn,&rc);
|
{
|
||||||
SetWindowPos(btn,HWND_TOP,rc.left,rc.top,0,0,SWP_NOSIZE|SWP_NOACTIVATE|SWP_NOZORDER);
|
RECT rc;
|
||||||
|
GetWindowRect(btn,&rc);
|
||||||
|
MapWindowPoints(NULL,taskBar.taskBar,(POINT*)&rc,2); // convert to taskbar coordinates
|
||||||
|
SetWindowPos(btn,HWND_TOP,rc.left,rc.top,0,0,SWP_NOSIZE|SWP_NOACTIVATE|SWP_NOZORDER);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3202,6 +3268,8 @@ static void CleanStartMenuDLL( void )
|
|||||||
g_SHFillRectClrHook=NULL;
|
g_SHFillRectClrHook=NULL;
|
||||||
ClearIatHook(g_StretchDIBitsHook);
|
ClearIatHook(g_StretchDIBitsHook);
|
||||||
g_StretchDIBitsHook=NULL;
|
g_StretchDIBitsHook=NULL;
|
||||||
|
ClearIatHook(g_ExtTextOutWHook);
|
||||||
|
g_ExtTextOutWHook = NULL;
|
||||||
|
|
||||||
ClearIatHook(g_DrawThemeBackgroundHook);
|
ClearIatHook(g_DrawThemeBackgroundHook);
|
||||||
g_DrawThemeBackgroundHook=NULL;
|
g_DrawThemeBackgroundHook=NULL;
|
||||||
@@ -3270,6 +3338,8 @@ if (!g_bTrimHooks)
|
|||||||
}
|
}
|
||||||
if (it->second.chevron)
|
if (it->second.chevron)
|
||||||
RemoveWindowSubclass(it->second.chevron,SubclassTrayChevronProc,'CLSH');
|
RemoveWindowSubclass(it->second.chevron,SubclassTrayChevronProc,'CLSH');
|
||||||
|
if (it->second.news)
|
||||||
|
RemoveWindowSubclass(it->second.news,SubclassTrayChevronProc,'CLSH');
|
||||||
if (it->second.desktop)
|
if (it->second.desktop)
|
||||||
RemoveWindowSubclass(it->second.desktop,SubclassDesktopButtonProc,'CLSH');
|
RemoveWindowSubclass(it->second.desktop,SubclassDesktopButtonProc,'CLSH');
|
||||||
if (it->second.bTimer)
|
if (it->second.bTimer)
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ void EnableStartTooltip( bool bEnable );
|
|||||||
|
|
||||||
struct TaskbarInfo
|
struct TaskbarInfo
|
||||||
{
|
{
|
||||||
TaskbarInfo( void ) { taskbarId=pointerId=0; taskBar=startButton=oldButton=rebar=taskList=chevron=desktop=NULL; startButtonSize.cx=startButtonSize.cy=0; oldButtonSize.cx=oldButtonSize.cy=0; bTimer=bCustomLook=bReplaceButton=bHideButton=bRecreatingButton=bThemeChanging=false; }
|
TaskbarInfo( void ) { taskbarId=pointerId=0; taskBar=startButton=oldButton=rebar=taskList=chevron=news=desktop=NULL; startButtonSize.cx=startButtonSize.cy=0; oldButtonSize.cx=oldButtonSize.cy=0; bTimer=bCustomLook=bReplaceButton=bHideButton=bRecreatingButton=bThemeChanging=false; }
|
||||||
int taskbarId;
|
int taskbarId;
|
||||||
HWND taskBar;
|
HWND taskBar;
|
||||||
HWND startButton; // either own start button or the win7 start button (depending on bReplaceButton)
|
HWND startButton; // either own start button or the win7 start button (depending on bReplaceButton)
|
||||||
@@ -55,6 +55,7 @@ struct TaskbarInfo
|
|||||||
HWND rebar;
|
HWND rebar;
|
||||||
HWND taskList;
|
HWND taskList;
|
||||||
HWND chevron;
|
HWND chevron;
|
||||||
|
HWND news;
|
||||||
HWND desktop;
|
HWND desktop;
|
||||||
SIZE startButtonSize;
|
SIZE startButtonSize;
|
||||||
SIZE oldButtonSize;
|
SIZE oldButtonSize;
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +13,10 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +25,10 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
|||||||
@@ -274,15 +274,30 @@ static void ParseApplicationInformation(CComPtr<IXMLDOMNode>& parent, AttributeW
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ParseSettingIDs(CComPtr<IXMLDOMNode>& node, AttributeWriter& writer)
|
||||||
|
{
|
||||||
|
writer.addString(Id::PageId, GetTranslatedString(node, L"PageID"));
|
||||||
|
writer.addString(Id::HostId, GetTranslatedString(node, L"HostID"));
|
||||||
|
writer.addString(Id::GroupId, GetTranslatedString(node, L"GroupID"));
|
||||||
|
writer.addString(Id::SettingId, GetTranslatedString(node, L"SettingID"));
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ParseSettingPaths(CComPtr<IXMLDOMNode>& parent, AttributeWriter& writer)
|
||||||
|
{
|
||||||
|
CComPtr<IXMLDOMNode> node;
|
||||||
|
if (parent->selectSingleNode(CComBSTR(L"SettingPaths/Path"), &node) == S_OK)
|
||||||
|
ParseSettingIDs(node, writer);
|
||||||
|
}
|
||||||
|
|
||||||
static void ParseSettingIdentity(CComPtr<IXMLDOMNode>& parent, AttributeWriter& writer)
|
static void ParseSettingIdentity(CComPtr<IXMLDOMNode>& parent, AttributeWriter& writer)
|
||||||
{
|
{
|
||||||
CComPtr<IXMLDOMNode> node;
|
CComPtr<IXMLDOMNode> node;
|
||||||
if (parent->selectSingleNode(CComBSTR(L"SettingIdentity"), &node) == S_OK)
|
if (parent->selectSingleNode(CComBSTR(L"SettingIdentity"), &node) == S_OK)
|
||||||
{
|
{
|
||||||
writer.addString(Id::PageId, GetTranslatedString(node, L"PageID"));
|
// Win11 24H2+
|
||||||
writer.addString(Id::HostId, GetTranslatedString(node, L"HostID"));
|
ParseSettingPaths(node, writer);
|
||||||
writer.addString(Id::GroupId, GetTranslatedString(node, L"GroupID"));
|
// older
|
||||||
writer.addString(Id::SettingId, GetTranslatedString(node, L"SettingID"));
|
ParseSettingIDs(node, writer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64EC">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -9,6 +17,14 @@
|
|||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64EC">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -17,6 +33,14 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Setup|ARM64EC">
|
||||||
|
<Configuration>Setup</Configuration>
|
||||||
|
<Platform>ARM64EC</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Setup|Win32">
|
<ProjectConfiguration Include="Setup|Win32">
|
||||||
<Configuration>Setup</Configuration>
|
<Configuration>Setup</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@@ -53,6 +77,13 @@
|
|||||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||||
<TargetName>$(ProjectName)64</TargetName>
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64EC'">
|
||||||
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||||
|
<TargetName>$(ProjectName)64</TargetName>
|
||||||
|
<BuildAsX>true</BuildAsX>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PreprocessorDefinitions>_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ Menu.SearchPeople = عن أ&شخاص...
|
|||||||
Menu.SortByName = فرز &حسب الاسم
|
Menu.SortByName = فرز &حسب الاسم
|
||||||
Menu.Open = ف&تح
|
Menu.Open = ف&تح
|
||||||
Menu.OpenAll = &فتح كافة المستخدمين
|
Menu.OpenAll = &فتح كافة المستخدمين
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = ا&ستكشاف
|
Menu.Explore = ا&ستكشاف
|
||||||
Menu.ExploreAll = است&كشاف كافة المستخدمين
|
Menu.ExploreAll = است&كشاف كافة المستخدمين
|
||||||
Menu.MenuSettings = إعدادات
|
Menu.MenuSettings = إعدادات
|
||||||
@@ -229,6 +230,7 @@ Menu.SearchPeople = За хо&ра...
|
|||||||
Menu.SortByName = &Сортирай по име
|
Menu.SortByName = &Сортирай по име
|
||||||
Menu.Open = &Отвори
|
Menu.Open = &Отвори
|
||||||
Menu.OpenAll = О&твори "Всички потребители"
|
Menu.OpenAll = О&твори "Всички потребители"
|
||||||
|
Menu.OpenPinned = Отворете фиксираните елементи
|
||||||
Menu.Explore = &Преглед
|
Menu.Explore = &Преглед
|
||||||
Menu.ExploreAll = Пре&глед на "Всички потребители"
|
Menu.ExploreAll = Пре&глед на "Всички потребители"
|
||||||
Menu.MenuSettings = Настройки
|
Menu.MenuSettings = Настройки
|
||||||
@@ -365,6 +367,7 @@ Menu.SearchPeople = &Persones...
|
|||||||
Menu.SortByName = Ordenar per &Nom
|
Menu.SortByName = Ordenar per &Nom
|
||||||
Menu.Open = &Obrir
|
Menu.Open = &Obrir
|
||||||
Menu.OpenAll = Ob&rir tots els usuaris
|
Menu.OpenAll = Ob&rir tots els usuaris
|
||||||
|
Menu.OpenPinned = Obre elements fixats
|
||||||
Menu.Explore = E&xplorar
|
Menu.Explore = E&xplorar
|
||||||
Menu.ExploreAll = &Explorar tots els usuaris
|
Menu.ExploreAll = &Explorar tots els usuaris
|
||||||
Menu.MenuSettings = Configuració
|
Menu.MenuSettings = Configuració
|
||||||
@@ -503,6 +506,7 @@ Menu.SearchPeople = Oso&by...
|
|||||||
Menu.SortByName = Seřadit podle &názvu
|
Menu.SortByName = Seřadit podle &názvu
|
||||||
Menu.Open = &Otevřít
|
Menu.Open = &Otevřít
|
||||||
Menu.OpenAll = Ot&evřít položky všech uživatele
|
Menu.OpenAll = Ot&evřít položky všech uživatele
|
||||||
|
Menu.OpenPinned = Otevřít připnuté položky
|
||||||
Menu.Explore = Proz&koumat
|
Menu.Explore = Proz&koumat
|
||||||
Menu.ExploreAll = P&rocházet položky všech uživatelů
|
Menu.ExploreAll = P&rocházet položky všech uživatelů
|
||||||
Menu.MenuSettings = Nastavení
|
Menu.MenuSettings = Nastavení
|
||||||
@@ -639,6 +643,7 @@ Menu.SearchPeople = Efter &personer...
|
|||||||
Menu.SortByName = So&rter efter navn
|
Menu.SortByName = So&rter efter navn
|
||||||
Menu.Open = Å&bn
|
Menu.Open = Å&bn
|
||||||
Menu.OpenAll = &Åbn mappen Alle brugere
|
Menu.OpenAll = &Åbn mappen Alle brugere
|
||||||
|
Menu.OpenPinned = Åbn fastgjorte elementer
|
||||||
Menu.Explore = &Stifinder
|
Menu.Explore = &Stifinder
|
||||||
Menu.ExploreAll = &Gennemse mappen Alle brugere
|
Menu.ExploreAll = &Gennemse mappen Alle brugere
|
||||||
Menu.MenuSettings = Indstillinger
|
Menu.MenuSettings = Indstillinger
|
||||||
@@ -912,6 +917,7 @@ Menu.SearchPeople = Για ά&τομα...
|
|||||||
Menu.SortByName = Ταξι&νόμηση κατά όνομα
|
Menu.SortByName = Ταξι&νόμηση κατά όνομα
|
||||||
Menu.Open = Άν&οιγμα
|
Menu.Open = Άν&οιγμα
|
||||||
Menu.OpenAll = Άνοιγμα ό&λων των χρηστών
|
Menu.OpenAll = Άνοιγμα ό&λων των χρηστών
|
||||||
|
Menu.OpenPinned = Άνοιγμα καρφιτσωμένων στοιχείων
|
||||||
Menu.Explore = Ε&ξερεύνηση
|
Menu.Explore = Ε&ξερεύνηση
|
||||||
Menu.ExploreAll = &Εξερεύνηση όλων των χρηστών
|
Menu.ExploreAll = &Εξερεύνηση όλων των χρηστών
|
||||||
Menu.MenuSettings = Ρυθμίσεις
|
Menu.MenuSettings = Ρυθμίσεις
|
||||||
@@ -1048,6 +1054,7 @@ Menu.SearchPeople = For &People...
|
|||||||
Menu.SortByName = Sort &by Name
|
Menu.SortByName = Sort &by Name
|
||||||
Menu.Open = &Open
|
Menu.Open = &Open
|
||||||
Menu.OpenAll = O&pen All Users
|
Menu.OpenAll = O&pen All Users
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = &Explore
|
Menu.Explore = &Explore
|
||||||
Menu.ExploreAll = E&xplore All Users
|
Menu.ExploreAll = E&xplore All Users
|
||||||
Menu.MenuSettings = Settings
|
Menu.MenuSettings = Settings
|
||||||
@@ -1184,6 +1191,7 @@ Menu.SearchPeople = &Personas...
|
|||||||
Menu.SortByName = Ordenar por &Nombre
|
Menu.SortByName = Ordenar por &Nombre
|
||||||
Menu.Open = &Abrir
|
Menu.Open = &Abrir
|
||||||
Menu.OpenAll = Ab&rir todos los usuarios
|
Menu.OpenAll = Ab&rir todos los usuarios
|
||||||
|
Menu.OpenPinned = Abrir elementos fijados
|
||||||
Menu.Explore = E&xplorar
|
Menu.Explore = E&xplorar
|
||||||
Menu.ExploreAll = &Explorar todos los usuarios
|
Menu.ExploreAll = &Explorar todos los usuarios
|
||||||
Menu.MenuSettings = Configuración
|
Menu.MenuSettings = Configuración
|
||||||
@@ -1320,6 +1328,7 @@ Menu.SearchPeople = &Inimesi...
|
|||||||
Menu.SortByName = Sor&di nime järgi
|
Menu.SortByName = Sor&di nime järgi
|
||||||
Menu.Open = &Ava
|
Menu.Open = &Ava
|
||||||
Menu.OpenAll = A&va kaust Kõik kasutajad
|
Menu.OpenAll = A&va kaust Kõik kasutajad
|
||||||
|
Menu.OpenPinned = Ava kinnitatud üksused
|
||||||
Menu.Explore = Uu&ri
|
Menu.Explore = Uu&ri
|
||||||
Menu.ExploreAll = Uur&i kausta Kõik kasutajad
|
Menu.ExploreAll = Uur&i kausta Kõik kasutajad
|
||||||
Menu.MenuSettings = Sätted
|
Menu.MenuSettings = Sätted
|
||||||
@@ -1456,6 +1465,7 @@ Menu.SearchPeople = برای ا&فراد...
|
|||||||
Menu.SortByName = &ترتیب بر اساس نام
|
Menu.SortByName = &ترتیب بر اساس نام
|
||||||
Menu.Open = با&ز کردن
|
Menu.Open = با&ز کردن
|
||||||
Menu.OpenAll = باز کردن تمام &کاربرها
|
Menu.OpenAll = باز کردن تمام &کاربرها
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = کاو&ش
|
Menu.Explore = کاو&ش
|
||||||
Menu.ExploreAll = کاوش ت&مام کاربرها
|
Menu.ExploreAll = کاوش ت&مام کاربرها
|
||||||
Menu.MenuSettings = تنظیمات
|
Menu.MenuSettings = تنظیمات
|
||||||
@@ -1594,6 +1604,7 @@ Menu.SearchPeople = &Henkilöitä...
|
|||||||
Menu.SortByName = &Lajittele nimen mukaan
|
Menu.SortByName = &Lajittele nimen mukaan
|
||||||
Menu.Open = &Avaa
|
Menu.Open = &Avaa
|
||||||
Menu.OpenAll = Avaa &kaikki käyttäjät
|
Menu.OpenAll = Avaa &kaikki käyttäjät
|
||||||
|
Menu.OpenPinned = Avaa kiinnitetyt kohteet
|
||||||
Menu.Explore = &Resurssienhallinta
|
Menu.Explore = &Resurssienhallinta
|
||||||
Menu.ExploreAll = &Selaa kaikkia käyttäjiä
|
Menu.ExploreAll = &Selaa kaikkia käyttäjiä
|
||||||
Menu.MenuSettings = Asetukset
|
Menu.MenuSettings = Asetukset
|
||||||
@@ -1730,6 +1741,7 @@ Menu.SearchPeople = Des &personnes…
|
|||||||
Menu.SortByName = Trier par &nom
|
Menu.SortByName = Trier par &nom
|
||||||
Menu.Open = &Ouvrir
|
Menu.Open = &Ouvrir
|
||||||
Menu.OpenAll = Ouvrir &tous les utilisateurs
|
Menu.OpenAll = Ouvrir &tous les utilisateurs
|
||||||
|
Menu.OpenPinned = Ouvrir les éléments épinglés
|
||||||
Menu.Explore = E&xplorer
|
Menu.Explore = E&xplorer
|
||||||
Menu.ExploreAll = &Explorer Tous les utilisateurs
|
Menu.ExploreAll = &Explorer Tous les utilisateurs
|
||||||
Menu.MenuSettings = Paramètres
|
Menu.MenuSettings = Paramètres
|
||||||
@@ -1866,6 +1878,7 @@ Menu.SearchPeople = Airson &daoine...
|
|||||||
Menu.SortByName = Seòrsaich a-rèir ain&m
|
Menu.SortByName = Seòrsaich a-rèir ain&m
|
||||||
Menu.Open = F&osgail
|
Menu.Open = F&osgail
|
||||||
Menu.OpenAll = &Fosgail a h-uile cleachdaiche
|
Menu.OpenAll = &Fosgail a h-uile cleachdaiche
|
||||||
|
Menu.OpenPinned = Fosgail nithean pinnte
|
||||||
Menu.Explore = &Rùraich
|
Menu.Explore = &Rùraich
|
||||||
Menu.ExploreAll = Rùraic&h a h-uile cleachdaiche
|
Menu.ExploreAll = Rùraic&h a h-uile cleachdaiche
|
||||||
Menu.MenuSettings = Roghainnean
|
Menu.MenuSettings = Roghainnean
|
||||||
@@ -2002,6 +2015,7 @@ Menu.SearchPeople = עבור &אנשים...
|
|||||||
Menu.SortByName = מיין לפי &שם
|
Menu.SortByName = מיין לפי &שם
|
||||||
Menu.Open = &פתח
|
Menu.Open = &פתח
|
||||||
Menu.OpenAll = פתח את &כל המשתמשים
|
Menu.OpenAll = פתח את &כל המשתמשים
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = &סייר
|
Menu.Explore = &סייר
|
||||||
Menu.ExploreAll = סיי&ר בכל המשתמשים
|
Menu.ExploreAll = סיי&ר בכל המשתמשים
|
||||||
Menu.MenuSettings = הגדרות
|
Menu.MenuSettings = הגדרות
|
||||||
@@ -2138,6 +2152,7 @@ Menu.SearchPeople = Za &osobe...
|
|||||||
Menu.SortByName = Poredaj po i&menu
|
Menu.SortByName = Poredaj po i&menu
|
||||||
Menu.Open = &Otvori
|
Menu.Open = &Otvori
|
||||||
Menu.OpenAll = Ot&vori sve korisnike
|
Menu.OpenAll = Ot&vori sve korisnike
|
||||||
|
Menu.OpenPinned = Otvaranje zakačenih stavki
|
||||||
Menu.Explore = Ist&raži
|
Menu.Explore = Ist&raži
|
||||||
Menu.ExploreAll = Istr&aži sve korisnike
|
Menu.ExploreAll = Istr&aži sve korisnike
|
||||||
Menu.MenuSettings = Postavke
|
Menu.MenuSettings = Postavke
|
||||||
@@ -2274,6 +2289,7 @@ Menu.SearchPeople = &Személyek...
|
|||||||
Menu.SortByName = &Név szerinti rendezés
|
Menu.SortByName = &Név szerinti rendezés
|
||||||
Menu.Open = &Megnyitás
|
Menu.Open = &Megnyitás
|
||||||
Menu.OpenAll = M&egnyitás - All Users
|
Menu.OpenAll = M&egnyitás - All Users
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = T&allózás
|
Menu.Explore = T&allózás
|
||||||
Menu.ExploreAll = Ta&llózás - All Users
|
Menu.ExploreAll = Ta&llózás - All Users
|
||||||
Menu.MenuSettings = Beállítások
|
Menu.MenuSettings = Beállítások
|
||||||
@@ -2412,6 +2428,7 @@ Menu.SearchPeople = Að &fólki...
|
|||||||
Menu.SortByName = Raða &eftir heiti
|
Menu.SortByName = Raða &eftir heiti
|
||||||
Menu.Open = &Opna
|
Menu.Open = &Opna
|
||||||
Menu.OpenAll = O&pna Allir notendur
|
Menu.OpenAll = O&pna Allir notendur
|
||||||
|
Menu.OpenPinned = Opnaðu fest atriði
|
||||||
Menu.Explore = Opna &möppu
|
Menu.Explore = Opna &möppu
|
||||||
Menu.ExploreAll = Opna m&öppu Allir notendur
|
Menu.ExploreAll = Opna m&öppu Allir notendur
|
||||||
Menu.MenuSettings = Stillingar
|
Menu.MenuSettings = Stillingar
|
||||||
@@ -2548,6 +2565,7 @@ Menu.SearchPeople = &Contatti...
|
|||||||
Menu.SortByName = Or&dina per nome
|
Menu.SortByName = Or&dina per nome
|
||||||
Menu.Open = &Apri
|
Menu.Open = &Apri
|
||||||
Menu.OpenAll = Apri &cartella Utenti
|
Menu.OpenAll = Apri &cartella Utenti
|
||||||
|
Menu.OpenPinned = Apri gli elementi appuntati
|
||||||
Menu.Explore = &Esplora
|
Menu.Explore = &Esplora
|
||||||
Menu.ExploreAll = Esplora cartella &Utenti
|
Menu.ExploreAll = Esplora cartella &Utenti
|
||||||
Menu.MenuSettings = Impostazioni
|
Menu.MenuSettings = Impostazioni
|
||||||
@@ -2684,6 +2702,7 @@ Menu.SearchPeople = 人(&P)...
|
|||||||
Menu.SortByName = 名前順で並べ替え(&B)
|
Menu.SortByName = 名前順で並べ替え(&B)
|
||||||
Menu.Open = 開く(&O)
|
Menu.Open = 開く(&O)
|
||||||
Menu.OpenAll = 開く - All Users(&P)
|
Menu.OpenAll = 開く - All Users(&P)
|
||||||
|
Menu.OpenPinned = 開く - Pinned
|
||||||
Menu.Explore = エクスプローラー(&E)
|
Menu.Explore = エクスプローラー(&E)
|
||||||
Menu.ExploreAll = エクスプローラー - All Users(&X)
|
Menu.ExploreAll = エクスプローラー - All Users(&X)
|
||||||
Menu.MenuSettings = 設定
|
Menu.MenuSettings = 設定
|
||||||
@@ -2820,6 +2839,7 @@ Menu.SearchPeople = 사람 찾기(&P)...
|
|||||||
Menu.SortByName = 이름순 정렬(&B)
|
Menu.SortByName = 이름순 정렬(&B)
|
||||||
Menu.Open = 열기(&O)
|
Menu.Open = 열기(&O)
|
||||||
Menu.OpenAll = 열기 - All Users(&P)
|
Menu.OpenAll = 열기 - All Users(&P)
|
||||||
|
Menu.OpenPinned = 열기 - Pinned
|
||||||
Menu.Explore = 탐색(&E)
|
Menu.Explore = 탐색(&E)
|
||||||
Menu.ExploreAll = 탐색 - All Users(&X)
|
Menu.ExploreAll = 탐색 - All Users(&X)
|
||||||
Menu.MenuSettings = 설정
|
Menu.MenuSettings = 설정
|
||||||
@@ -2956,6 +2976,7 @@ Menu.SearchPeople = &Asmenims...
|
|||||||
Menu.SortByName = &Rūšiuoti pagal vardus
|
Menu.SortByName = &Rūšiuoti pagal vardus
|
||||||
Menu.Open = &Atidaryti
|
Menu.Open = &Atidaryti
|
||||||
Menu.OpenAll = A&tidaryti aplanką Visi vartotojai
|
Menu.OpenAll = A&tidaryti aplanką Visi vartotojai
|
||||||
|
Menu.OpenPinned = Atidaryti prisegtus elementus
|
||||||
Menu.Explore = Naršyt&i
|
Menu.Explore = Naršyt&i
|
||||||
Menu.ExploreAll = Na&ršyti visus vartotojus
|
Menu.ExploreAll = Na&ršyti visus vartotojus
|
||||||
Menu.MenuSettings = Parametrai
|
Menu.MenuSettings = Parametrai
|
||||||
@@ -3092,6 +3113,7 @@ Menu.SearchPeople = &Personām...
|
|||||||
Menu.SortByName = &Kārtot pēc nosaukuma
|
Menu.SortByName = &Kārtot pēc nosaukuma
|
||||||
Menu.Open = A&tvērt
|
Menu.Open = A&tvērt
|
||||||
Menu.OpenAll = &Atvērt visus lietotājus
|
Menu.OpenAll = &Atvērt visus lietotājus
|
||||||
|
Menu.OpenPinned = Atvērt piespraustos vienumus
|
||||||
Menu.Explore = &Pārlūkot
|
Menu.Explore = &Pārlūkot
|
||||||
Menu.ExploreAll = Pār&lūkot visus lietotājus
|
Menu.ExploreAll = Pār&lūkot visus lietotājus
|
||||||
Menu.MenuSettings = Iestatījumi
|
Menu.MenuSettings = Iestatījumi
|
||||||
@@ -3228,6 +3250,7 @@ Menu.SearchPeople = За луѓе...
|
|||||||
Menu.SortByName = Сортирај по име
|
Menu.SortByName = Сортирај по име
|
||||||
Menu.Open = Отвори
|
Menu.Open = Отвори
|
||||||
Menu.OpenAll = Отвори "Сите корисници"
|
Menu.OpenAll = Отвори "Сите корисници"
|
||||||
|
Menu.OpenPinned = Отворете закачени ставки
|
||||||
Menu.Explore = Преглед
|
Menu.Explore = Преглед
|
||||||
Menu.ExploreAll = Преглед на "Сите корисници"
|
Menu.ExploreAll = Преглед на "Сите корисници"
|
||||||
Menu.MenuSettings = Подесувања
|
Menu.MenuSettings = Подесувања
|
||||||
@@ -3364,6 +3387,7 @@ Menu.SearchPeople = Etter &personer...
|
|||||||
Menu.SortByName = Sorter etter &navn
|
Menu.SortByName = Sorter etter &navn
|
||||||
Menu.Open = Å&pne
|
Menu.Open = Å&pne
|
||||||
Menu.OpenAll = &Åpne mappen All users
|
Menu.OpenAll = &Åpne mappen All users
|
||||||
|
Menu.OpenPinned = Åpne festede elementer
|
||||||
Menu.Explore = &Utforsk
|
Menu.Explore = &Utforsk
|
||||||
Menu.ExploreAll = Utforsk &mappen All users
|
Menu.ExploreAll = Utforsk &mappen All users
|
||||||
Menu.MenuSettings = Innstillinger
|
Menu.MenuSettings = Innstillinger
|
||||||
@@ -3500,6 +3524,7 @@ Menu.SearchPeople = &Personen...
|
|||||||
Menu.SortByName = S&orteren op naam
|
Menu.SortByName = S&orteren op naam
|
||||||
Menu.Open = &Openen
|
Menu.Open = &Openen
|
||||||
Menu.OpenAll = &Alle gebruikers weergeven
|
Menu.OpenAll = &Alle gebruikers weergeven
|
||||||
|
Menu.OpenPinned = Open vastgezette items
|
||||||
Menu.Explore = Ve&rkennen
|
Menu.Explore = Ve&rkennen
|
||||||
Menu.ExploreAll = Alle &gebruikers verkennen
|
Menu.ExploreAll = Alle &gebruikers verkennen
|
||||||
Menu.MenuSettings = Instellingen
|
Menu.MenuSettings = Instellingen
|
||||||
@@ -3636,6 +3661,7 @@ Menu.SearchPeople = &Do osób...
|
|||||||
Menu.SortByName = Sortuj w&edług nazw
|
Menu.SortByName = Sortuj w&edług nazw
|
||||||
Menu.Open = &Otwórz
|
Menu.Open = &Otwórz
|
||||||
Menu.OpenAll = Otwórz &wszystkich użytkowników
|
Menu.OpenAll = Otwórz &wszystkich użytkowników
|
||||||
|
Menu.OpenPinned = Otwórz przypięte elementy
|
||||||
Menu.Explore = &Eksploruj
|
Menu.Explore = &Eksploruj
|
||||||
Menu.ExploreAll = E&ksploruj wszystkich użytkowników
|
Menu.ExploreAll = E&ksploruj wszystkich użytkowników
|
||||||
Menu.MenuSettings = Ustawienia
|
Menu.MenuSettings = Ustawienia
|
||||||
@@ -3772,6 +3798,7 @@ Menu.SearchPeople = Para &Pessoas...
|
|||||||
Menu.SortByName = C&lassificar por nome
|
Menu.SortByName = C&lassificar por nome
|
||||||
Menu.Open = &Abrir
|
Menu.Open = &Abrir
|
||||||
Menu.OpenAll = A&brir a pasta All Users
|
Menu.OpenAll = A&brir a pasta All Users
|
||||||
|
Menu.OpenPinned = Abrir itens fixados
|
||||||
Menu.Explore = E&xplorar
|
Menu.Explore = E&xplorar
|
||||||
Menu.ExploreAll = Expl&orar a pasta All Users
|
Menu.ExploreAll = Expl&orar a pasta All Users
|
||||||
Menu.MenuSettings = Configurações
|
Menu.MenuSettings = Configurações
|
||||||
@@ -3908,6 +3935,7 @@ Menu.SearchPeople = &Pessoas...
|
|||||||
Menu.SortByName = Ordenar pelo &nome
|
Menu.SortByName = Ordenar pelo &nome
|
||||||
Menu.Open = &Abrir
|
Menu.Open = &Abrir
|
||||||
Menu.OpenAll = A&brir All Users
|
Menu.OpenAll = A&brir All Users
|
||||||
|
Menu.OpenPinned = Abrir os itens fixados
|
||||||
Menu.Explore = E&xplorar
|
Menu.Explore = E&xplorar
|
||||||
Menu.ExploreAll = Explorar All &Users
|
Menu.ExploreAll = Explorar All &Users
|
||||||
Menu.MenuSettings = Definições
|
Menu.MenuSettings = Definições
|
||||||
@@ -4044,6 +4072,7 @@ Menu.SearchPeople = &Persoane...
|
|||||||
Menu.SortByName = &Sortare după nume
|
Menu.SortByName = &Sortare după nume
|
||||||
Menu.Open = &Deschidere
|
Menu.Open = &Deschidere
|
||||||
Menu.OpenAll = Desc&hidere Toți utilizatorii
|
Menu.OpenAll = Desc&hidere Toți utilizatorii
|
||||||
|
Menu.OpenPinned = Deschideți elementele fixate
|
||||||
Menu.Explore = &Explorare
|
Menu.Explore = &Explorare
|
||||||
Menu.ExploreAll = E&xplorare Toți utilizatorii
|
Menu.ExploreAll = E&xplorare Toți utilizatorii
|
||||||
Menu.MenuSettings = Setări
|
Menu.MenuSettings = Setări
|
||||||
@@ -4180,6 +4209,7 @@ Menu.SearchPeople = &Людей...
|
|||||||
Menu.SortByName = &Сортировать по имени
|
Menu.SortByName = &Сортировать по имени
|
||||||
Menu.Open = &Открыть
|
Menu.Open = &Открыть
|
||||||
Menu.OpenAll = Открыть о&бщее для всех меню
|
Menu.OpenAll = Открыть о&бщее для всех меню
|
||||||
|
Menu.OpenPinned = Открыть папку "Pinned"
|
||||||
Menu.Explore = &Проводник
|
Menu.Explore = &Проводник
|
||||||
Menu.ExploreAll = Проводни&к в общее для всех меню
|
Menu.ExploreAll = Проводни&к в общее для всех меню
|
||||||
Menu.MenuSettings = Настройка
|
Menu.MenuSettings = Настройка
|
||||||
@@ -4316,6 +4346,7 @@ Menu.SearchPeople = Ľu&dia...
|
|||||||
Menu.SortByName = &Usporiadať podľa názvov
|
Menu.SortByName = &Usporiadať podľa názvov
|
||||||
Menu.Open = &Otvoriť
|
Menu.Open = &Otvoriť
|
||||||
Menu.OpenAll = Ot&voriť profil All Users
|
Menu.OpenAll = Ot&voriť profil All Users
|
||||||
|
Menu.OpenPinned = Otvoriť Pinned
|
||||||
Menu.Explore = &Preskúmať
|
Menu.Explore = &Preskúmať
|
||||||
Menu.ExploreAll = P&reskúmať profil All Users
|
Menu.ExploreAll = P&reskúmať profil All Users
|
||||||
Menu.MenuSettings = Nastavenie
|
Menu.MenuSettings = Nastavenie
|
||||||
@@ -4452,6 +4483,7 @@ Menu.SearchPeople = &Za osebe ...
|
|||||||
Menu.SortByName = &Razvrsti po imenih
|
Menu.SortByName = &Razvrsti po imenih
|
||||||
Menu.Open = &Odpri
|
Menu.Open = &Odpri
|
||||||
Menu.OpenAll = O&dpri mapo »All users«
|
Menu.OpenAll = O&dpri mapo »All users«
|
||||||
|
Menu.OpenPinned = Odpri »Pinned«
|
||||||
Menu.Explore = R&azišči
|
Menu.Explore = R&azišči
|
||||||
Menu.ExploreAll = &Razišči mapo »All users«
|
Menu.ExploreAll = &Razišči mapo »All users«
|
||||||
Menu.MenuSettings = Nastavitve
|
Menu.MenuSettings = Nastavitve
|
||||||
@@ -4588,6 +4620,7 @@ Menu.SearchPeople = &Za osobe...
|
|||||||
Menu.SortByName = &Sortiraj po imenu
|
Menu.SortByName = &Sortiraj po imenu
|
||||||
Menu.Open = &Otvori
|
Menu.Open = &Otvori
|
||||||
Menu.OpenAll = O&tvori sve korisnike
|
Menu.OpenAll = O&tvori sve korisnike
|
||||||
|
Menu.OpenPinned = Otvori dodato
|
||||||
Menu.Explore = &Istraži
|
Menu.Explore = &Istraži
|
||||||
Menu.ExploreAll = Istraži sve &korisnike
|
Menu.ExploreAll = Istraži sve &korisnike
|
||||||
Menu.MenuSettings = Postavke
|
Menu.MenuSettings = Postavke
|
||||||
@@ -4724,6 +4757,7 @@ Menu.SearchPeople = Efter &personer...
|
|||||||
Menu.SortByName = Sortera efter &namn
|
Menu.SortByName = Sortera efter &namn
|
||||||
Menu.Open = &Öppna
|
Menu.Open = &Öppna
|
||||||
Menu.OpenAll = Öppna &delade Start-menyn
|
Menu.OpenAll = Öppna &delade Start-menyn
|
||||||
|
Menu.OpenPinned = Öppna fästa objekt
|
||||||
Menu.Explore = &Utforska
|
Menu.Explore = &Utforska
|
||||||
Menu.ExploreAll = Utf&orska delade Start-menyn
|
Menu.ExploreAll = Utf&orska delade Start-menyn
|
||||||
Menu.MenuSettings = Inställningar
|
Menu.MenuSettings = Inställningar
|
||||||
@@ -4861,6 +4895,7 @@ Menu.SearchPeople = สำหรับ&บุคคล...
|
|||||||
Menu.SortByName = เรียงลำดั&บตามชื่อ
|
Menu.SortByName = เรียงลำดั&บตามชื่อ
|
||||||
Menu.Open = เ&ปิด
|
Menu.Open = เ&ปิด
|
||||||
Menu.OpenAll = &เปิดโฟลเดอร์ All Users
|
Menu.OpenAll = &เปิดโฟลเดอร์ All Users
|
||||||
|
Menu.OpenPinned = เ&ปิด Pinned
|
||||||
Menu.Explore = สำรว&จ
|
Menu.Explore = สำรว&จ
|
||||||
Menu.ExploreAll = &สำรวจโฟลเดอร์ All Users
|
Menu.ExploreAll = &สำรวจโฟลเดอร์ All Users
|
||||||
Menu.MenuSettings = การตั้งค่า
|
Menu.MenuSettings = การตั้งค่า
|
||||||
@@ -4997,6 +5032,7 @@ Menu.SearchPeople = &Kişiler...
|
|||||||
Menu.SortByName = A&da Göre Sırala
|
Menu.SortByName = A&da Göre Sırala
|
||||||
Menu.Open = &Aç
|
Menu.Open = &Aç
|
||||||
Menu.OpenAll = Tü&m Kullanıcıları Aç
|
Menu.OpenAll = Tü&m Kullanıcıları Aç
|
||||||
|
Menu.OpenPinned = Sabitlenmiş öğeleri Aç
|
||||||
Menu.Explore = A&raştır
|
Menu.Explore = A&raştır
|
||||||
Menu.ExploreAll = &Tüm Kullanıcıları Araştır
|
Menu.ExploreAll = &Tüm Kullanıcıları Araştır
|
||||||
Menu.MenuSettings = Ayarlar
|
Menu.MenuSettings = Ayarlar
|
||||||
@@ -5133,6 +5169,7 @@ Menu.SearchPeople = Л&юдей...
|
|||||||
Menu.SortByName = Сортувати за &іменем
|
Menu.SortByName = Сортувати за &іменем
|
||||||
Menu.Open = &Відкрити
|
Menu.Open = &Відкрити
|
||||||
Menu.OpenAll = В&ідкрити спільне для всіх меню
|
Menu.OpenAll = В&ідкрити спільне для всіх меню
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = &Провідник
|
Menu.Explore = &Провідник
|
||||||
Menu.ExploreAll = Пр&овідник до спільного для всіх меню
|
Menu.ExploreAll = Пр&овідник до спільного для всіх меню
|
||||||
Menu.MenuSettings = Настройки
|
Menu.MenuSettings = Настройки
|
||||||
@@ -5269,6 +5306,7 @@ Menu.SearchPeople = 个人(&P)...
|
|||||||
Menu.SortByName = 按名称排序(&B)
|
Menu.SortByName = 按名称排序(&B)
|
||||||
Menu.Open = 打开(&O)
|
Menu.Open = 打开(&O)
|
||||||
Menu.OpenAll = 打开所有用户(&P)
|
Menu.OpenAll = 打开所有用户(&P)
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = 浏览(&E)
|
Menu.Explore = 浏览(&E)
|
||||||
Menu.ExploreAll = 浏览所有用户(&X)
|
Menu.ExploreAll = 浏览所有用户(&X)
|
||||||
Menu.MenuSettings = 设置
|
Menu.MenuSettings = 设置
|
||||||
@@ -5405,6 +5443,7 @@ Menu.SearchPeople = 人員(&P)...
|
|||||||
Menu.SortByName = 依名稱排序(&B)
|
Menu.SortByName = 依名稱排序(&B)
|
||||||
Menu.Open = 開啟(&O)
|
Menu.Open = 開啟(&O)
|
||||||
Menu.OpenAll = 開啟所有使用者(&P)
|
Menu.OpenAll = 開啟所有使用者(&P)
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = 檔案總管(&E)
|
Menu.Explore = 檔案總管(&E)
|
||||||
Menu.ExploreAll = 瀏覽所有使用者(&X)
|
Menu.ExploreAll = 瀏覽所有使用者(&X)
|
||||||
Menu.MenuSettings = 設定
|
Menu.MenuSettings = 設定
|
||||||
@@ -5541,6 +5580,7 @@ Menu.SearchPeople = 人員(&P)...
|
|||||||
Menu.SortByName = 依名稱排序(&B)
|
Menu.SortByName = 依名稱排序(&B)
|
||||||
Menu.Open = 開啟(&O)
|
Menu.Open = 開啟(&O)
|
||||||
Menu.OpenAll = 開啟所有使用者(&P)
|
Menu.OpenAll = 開啟所有使用者(&P)
|
||||||
|
Menu.OpenPinned = Open Pinned
|
||||||
Menu.Explore = 檔案總管(&E)
|
Menu.Explore = 檔案總管(&E)
|
||||||
Menu.ExploreAll = 瀏覽所有使用者(&X)
|
Menu.ExploreAll = 瀏覽所有使用者(&X)
|
||||||
Menu.MenuSettings = 設定
|
Menu.MenuSettings = 設定
|
||||||
|
|||||||
@@ -21,5 +21,5 @@ deploy:
|
|||||||
on:
|
on:
|
||||||
APPVEYOR_ACCOUNT_NAME: passionate-coder
|
APPVEYOR_ACCOUNT_NAME: passionate-coder
|
||||||
auth_token:
|
auth_token:
|
||||||
secure: D0QZnRZfea3qJlWOwrxE6M2jrbiSrOfz/6U7RzdeeG8N0qNDFKI7LFjYyw2I/PcR
|
secure: SOu6Y71k0oIxXJR35x+7ZeU/+WRW8kaGnCWcbR3OVOd8HeCJwB1Tw3hUJa5EveLGKaGoMKGqAh01Pwc8tWX4xmphZsYYUr09IVjA0+rqgN5VT87CXD6OQxUxBJ7g+9IN
|
||||||
prerelease: true
|
prerelease: true
|
||||||
|
|||||||
Reference in New Issue
Block a user