Compare commits
48 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c517e21465 | ||
|
|
8f1a696e94 | ||
|
|
4047d726ac | ||
|
|
4b26b4d9e6 | ||
|
|
2f251c4f63 | ||
|
|
d2985bab88 | ||
|
|
f897241a08 | ||
|
|
8f26cae3f0 | ||
|
|
bbe2aa5d2f | ||
|
|
12f1742f71 | ||
|
|
931e5e831f | ||
|
|
6c6e1515ef | ||
|
|
eb49564282 | ||
|
|
7ea9f0ef1c | ||
|
|
a0c1357f85 | ||
|
|
4f8bb5ac57 | ||
|
|
10f06b2794 | ||
|
|
b2b734f295 | ||
|
|
9800b03b63 | ||
|
|
4377817bef | ||
|
|
8fee436996 | ||
|
|
9f949dd99b | ||
|
|
714c98130a | ||
|
|
fc79fb76c1 | ||
|
|
9878f02f70 | ||
|
|
9c149334fa | ||
|
|
2130047bd6 | ||
|
|
bcc76dd6ab | ||
|
|
e7bbe0e235 | ||
|
|
8ffed5651d | ||
|
|
faa666b54d | ||
|
|
42aaaed045 | ||
|
|
4705b35694 | ||
|
|
073035bee9 | ||
|
|
ab4771e015 | ||
|
|
d0ad10429f | ||
|
|
7f56207fa1 | ||
|
|
21eea53dfd | ||
|
|
2d6fb1f3bb | ||
|
|
528d15e6c9 | ||
|
|
615fe66544 | ||
|
|
01c1227895 | ||
|
|
ecd17cb628 | ||
|
|
134b414f0b | ||
|
|
421f55192e | ||
|
|
cf763d3a32 | ||
|
|
4a417cc02c | ||
|
|
c6924a8b92 |
31
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,31 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Version:**
|
||||
- Open-Shell: [e.g. 4.4.131]
|
||||
- OS: [e.g. Windows 10 1903]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
61
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
name: Bug report
|
||||
description: Create a report to help us improve
|
||||
labels: Bug
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
**Please, make sure you are using [latest](https://github.com/Open-Shell/Open-Shell-Menu/releases) `Open-Shell` build before reporting a bug.**
|
||||
Especially on `Windows 11` you should use 4.4.190 (or newer).
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Describe the bug
|
||||
description: A clear and concise description of what the bug is. Screenshots are also encouraged.
|
||||
placeholder: Please use English for reports and screenshots to allow maintainers to easily understand the issue.
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
attributes:
|
||||
label: Area of issue
|
||||
description: What component(s) of Open-Shell does this involve? Select all that apply.
|
||||
multiple: true
|
||||
options:
|
||||
- Start menu
|
||||
- Taskbar
|
||||
- Windows Explorer
|
||||
- Internet Explorer
|
||||
- Installation/Other
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: To reproduce
|
||||
description: Steps to reproduce the behavior
|
||||
placeholder: |
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Expected behavior
|
||||
placeholder: What did you expect to happen?
|
||||
- type: input
|
||||
attributes:
|
||||
label: Open-Shell version
|
||||
placeholder: e.g. 4.4.170
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Windows version
|
||||
placeholder: e.g. Windows 10 22H2
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional context
|
||||
description: Add any other context about the problem here.
|
||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Github Discussions
|
||||
url: https://github.com/Open-Shell/Open-Shell-Menu/discussions
|
||||
about: Please ask and answer questions here.
|
||||
20
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@@ -1,20 +0,0 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: Enhancement/Feature Request
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
||||
39
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
name: Feature request
|
||||
description: Suggest an idea for this project
|
||||
labels: Enhancement/Feature Request
|
||||
|
||||
body:
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Is your feature request related to a problem? Please describe.
|
||||
description: A clear and concise description of what the problem is.
|
||||
placeholder: Ex. I'm always frustrated when [...]
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Describe the solution you'd like
|
||||
description: A clear and concise description of what you want to happen.
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
attributes:
|
||||
label: Area of issue
|
||||
description: What component(s) of Open-Shell does this involve? Select all that apply.
|
||||
multiple: true
|
||||
options:
|
||||
- Start menu
|
||||
- Taskbar
|
||||
- Windows Explorer
|
||||
- Internet Explorer
|
||||
- Installation/Other
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Alternatives you've considered
|
||||
description: A clear and concise description of any alternative solutions or features you've considered.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional context
|
||||
description: Add any other context or screenshots about the feature request here.
|
||||
2
.gitignore
vendored
@@ -68,6 +68,7 @@ StyleCopReport.xml
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_i.h
|
||||
*_h.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
@@ -348,7 +349,6 @@ ASALocalRun/
|
||||
*.PVS-Studio.*
|
||||
|
||||
# Classic-Shell specific ignores
|
||||
Src/StartMenu/Skins/
|
||||
Src/Setup/Output/
|
||||
Src/Setup/Final/
|
||||
Src/Setup/Temp/
|
||||
|
||||
18
README.md
@@ -1,23 +1,27 @@
|
||||
## Open-Shell <img src=/Src/Setup/OpenShell.ico width="64" />
|
||||
<a href="#"><img src=/Src/Setup/OpenShell.ico width="80" align="left"/></a>
|
||||
|
||||
|
||||
# Open-Shell
|
||||
|
||||
A collection of utilities bringing back classic features to Windows.
|
||||
|
||||
*Originally* **[Classic Shell](http://www.classicshell.net)** *by [Ivo Beltchev](https://sourceforge.net/u/ibeltchev/profile/)*
|
||||
|
||||
[](https://github.com/Open-Shell/Open-Shell-Menu/releases/latest) [](https://github.com/Open-Shell/Open-Shell-Menu/releases) [](https://ci.appveyor.com/project/passionate-coder/open-shell-menu/branch/master) [](https://gitq.com/passionate-coder/Classic-Start) [](https://gitter.im/open-shell/Lobby) [](https://discord.gg/7H6arr5)
|
||||
[](https://github.com/Open-Shell/Open-Shell-Menu/releases/latest) [](https://github.com/Open-Shell/Open-Shell-Menu/releases) [](https://ci.appveyor.com/project/passionate-coder/open-shell-menu/branch/master) [](https://gitq.com/passionate-coder/Classic-Start) [](https://gitter.im/open-shell/Lobby) [](https://discord.gg/7H6arr5)
|
||||
|
||||
[Homepage](https://open-shell.github.io/Open-Shell-Menu)
|
||||
[Gitter Discussion rooms](https://gitter.im/Open-Shell)
|
||||
[Open-Shell Homepage](https://open-shell.github.io/Open-Shell-Menu)
|
||||
|
||||
### Features
|
||||
- Classic style Start Menu for Windows 7, 8, 8.1, 10
|
||||
- Classic style Start menu for Windows 7, 8, 8.1, 10, and 11
|
||||
- Toolbar for Windows Explorer
|
||||
- Explorer status bar with file size and disk space
|
||||
- Classic copy UI (Windows 7 only)
|
||||
- Show file size in Explorer status bar
|
||||
- Title bar and status bar for Internet Explorer
|
||||
|
||||
### Download
|
||||
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)
|
||||
|
||||
### Temporary Translation/Language Solution
|
||||
1. Download [language DLL](https://coddec.github.io/Classic-Shell/www.classicshell.net/translations/index.html)
|
||||
|
||||
@@ -10,7 +10,7 @@ Visual Studio 2022 (Community Edition is enough)
|
||||
- Windows 11 SDK (10.0.22621.0) for Desktop C++
|
||||
- Visual C++ ATL support
|
||||
HTML Help Workshop
|
||||
WiX 3.7
|
||||
WiX 3.11
|
||||
7-Zip
|
||||
It is possible to convert the projects to newer versions of Visual Studio and newer SDKs.
|
||||
Newer versions of WiX will probably work fine.
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#pragma once
|
||||
#include "resource.h" // main symbols
|
||||
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
#include <vector>
|
||||
|
||||
// CClassicCopyExt
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "resource.h"
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
#include "dllmain.h"
|
||||
|
||||
// Used to determine whether the DLL can be unloaded by OLE
|
||||
|
||||
@@ -33,337 +33,47 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
||||
<TargetName>$(ProjectName)32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||
<TargetName>$(ProjectName)64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<PropertyGroup>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)64</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<PreprocessorDefinitions>_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>$(TargetName).def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'!='Setup'">
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicExplorer_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicExplorer_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicExplorer_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>oleacc.lib;comctl32.lib;uxtheme.lib;dwmapi.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;Netapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="ClassicCopy.cpp" />
|
||||
<ClCompile Include="ClassicCopyExt.cpp" />
|
||||
@@ -390,7 +100,9 @@
|
||||
<None Include="ClassicExplorer64.def" />
|
||||
<None Include="ExplorerBand.rgs" />
|
||||
<None Include="ExplorerBHO.rgs" />
|
||||
<None Include="ExplorerL10N.ini" />
|
||||
<None Include="ExplorerL10N.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="ShareOverlay.rgs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
@@ -398,7 +110,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="ClassicCopyExt.h" />
|
||||
<ClInclude Include="ClassicExplorer_i.h" />
|
||||
<ClInclude Include="ClassicExplorer_h.h" />
|
||||
<ClInclude Include="dllmain.h" />
|
||||
<ClInclude Include="ExplorerBand.h" />
|
||||
<ClInclude Include="ExplorerBHO.h" />
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
<ClInclude Include="Resource.h">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="ClassicExplorer_i.h">
|
||||
<ClInclude Include="ClassicExplorer_h.h">
|
||||
<Filter>Generated Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -21,128 +21,26 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -64,6 +64,9 @@ LRESULT CALLBACK CExplorerBHO::SubclassTreeParentProc( HWND hWnd, UINT uMsg, WPA
|
||||
// - change the tree styles to achieve different looks
|
||||
LRESULT CALLBACK CExplorerBHO::SubclassTreeProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, UINT_PTR uIdSubclass, DWORD_PTR dwRefData )
|
||||
{
|
||||
if (GetTlsData()->bho == NULL)
|
||||
return DefSubclassProc(hWnd, uMsg, wParam, lParam);
|
||||
|
||||
if (uMsg==TVM_ENSUREVISIBLE && (dwRefData&1))
|
||||
{
|
||||
// HACK! there is a bug in Win7 Explorer and when the selected folder is expanded for the first time it sends TVM_ENSUREVISIBLE for
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
#include "ComHelper.h"
|
||||
#include <shdispid.h>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#pragma once
|
||||
#include "resource.h"
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
#include "SettingsParser.h"
|
||||
#include <vector>
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include "resource.h" // main symbols
|
||||
#include <lm.h>
|
||||
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
|
||||
// CShareOverlay
|
||||
|
||||
|
||||
@@ -48,11 +48,6 @@ static int g_LoadDialogs[]=
|
||||
0
|
||||
};
|
||||
|
||||
const wchar_t *GetDocRelativePath( void )
|
||||
{
|
||||
return DOC_PATH;
|
||||
}
|
||||
|
||||
struct FindChild
|
||||
{
|
||||
const wchar_t *className;
|
||||
@@ -110,7 +105,7 @@ static DWORD CALLBACK DllInitThread( void* )
|
||||
GetModuleFileName(g_Instance,path,_countof(path));
|
||||
*PathFindFileName(path)=0;
|
||||
wchar_t fname[_MAX_PATH];
|
||||
Sprintf(fname,_countof(fname),L"%s" INI_PATH L"ExplorerL10N.ini",path);
|
||||
Sprintf(fname,_countof(fname),L"%sExplorerL10N.ini",path);
|
||||
CString language=GetSettingString(L"Language");
|
||||
ParseTranslations(fname,language);
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
// dllmain.h : Declaration of module class.
|
||||
#pragma once
|
||||
|
||||
#include "ClassicExplorer_i.h"
|
||||
#include "ClassicExplorer_h.h"
|
||||
#include <vector>
|
||||
|
||||
class CClassicExplorerModule : public CAtlDllModuleT< CClassicExplorerModule >
|
||||
|
||||
@@ -26,12 +26,4 @@ using namespace ATL;
|
||||
#include <shlguid.h>
|
||||
#include <shlobj.h>
|
||||
|
||||
#ifdef BUILD_SETUP
|
||||
#define INI_PATH L""
|
||||
#define DOC_PATH L""
|
||||
#else
|
||||
#define INI_PATH L"..\\"
|
||||
#define DOC_PATH L"..\\..\\Docs\\Help\\"
|
||||
#endif
|
||||
|
||||
#include "StringUtils.h"
|
||||
|
||||
@@ -33,236 +33,32 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>shlwapi.lib;comctl32.lib;psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// Confidential information of Ivo Beltchev. Not for disclosure or distribution without prior written consent from the author
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "ClassicIEDLL_i.h"
|
||||
#include "ClassicIEDLL_h.h"
|
||||
#include "ClassicIEBHO.h"
|
||||
#include "ClassicIEDLL.h"
|
||||
#include "Settings.h"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "resource.h"
|
||||
#include "ClassicIEDLL_i.h"
|
||||
#include "ClassicIEDLL_h.h"
|
||||
#include "ClassicIEDLL.h"
|
||||
#include "Settings.h"
|
||||
#include "dllmain.h"
|
||||
|
||||
@@ -33,323 +33,44 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>..\$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>..\$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<OutDir>..\$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_32</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<OutDir>..\$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>$(ProjectName)_64</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<PreprocessorDefinitions>_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>$(TargetName).def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'!='Setup'">
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<RegisterOutput>true</RegisterOutput>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<PerUserRedirection>true</PerUserRedirection>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Setup|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<HeaderFileName>ClassicIEDLL_i.h</HeaderFileName>
|
||||
<DllDataFileName />
|
||||
<InterfaceIdentifierFileName>ClassicIEDLL_i.c</InterfaceIdentifierFileName>
|
||||
<ProxyFileName>ClassicIEDLL_p.c</ProxyFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_USRDLL;CLASSICIEDLL_EXPORTS;BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>$(IntDir);..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>uxtheme.lib;dwmapi.lib;comctl32.lib;msimg32.lib;winmm.lib;htmlhelp.lib;wininet.lib;wintrust.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ModuleDefinitionFile>.\$(TargetName).def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="ClassicIEBHO.cpp" />
|
||||
<ClCompile Include="ClassicIEDLL.cpp" />
|
||||
@@ -375,7 +96,7 @@
|
||||
<ItemGroup>
|
||||
<ClInclude Include="ClassicIEBHO.h" />
|
||||
<ClInclude Include="ClassicIEDLL.h" />
|
||||
<ClInclude Include="ClassicIEDLL_i.h" />
|
||||
<ClInclude Include="ClassicIEDLL_h.h" />
|
||||
<ClInclude Include="dllmain.h" />
|
||||
<ClInclude Include="Resource.h" />
|
||||
<ClInclude Include="SettingsUI.h" />
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
<ClInclude Include="targetver.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="ClassicIEDLL_i.h">
|
||||
<ClInclude Include="ClassicIEDLL_h.h">
|
||||
<Filter>Generated Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -33,11 +33,6 @@ static int g_LoadDialogs[]=
|
||||
0
|
||||
};
|
||||
|
||||
const wchar_t *GetDocRelativePath( void )
|
||||
{
|
||||
return DOC_PATH;
|
||||
}
|
||||
|
||||
static void NewVersionCallback( VersionData &data )
|
||||
{
|
||||
wchar_t path[_MAX_PATH];
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ClassicIEDLL_i.h"
|
||||
#include "ClassicIEDLL_h.h"
|
||||
|
||||
class CClassicIEDLLModule : public CAtlDllModuleT< CClassicIEDLLModule >
|
||||
{
|
||||
|
||||
@@ -24,12 +24,4 @@
|
||||
|
||||
using namespace ATL;
|
||||
|
||||
#ifdef BUILD_SETUP
|
||||
#define INI_PATH L""
|
||||
#define DOC_PATH L""
|
||||
#else
|
||||
#define INI_PATH L"..\\"
|
||||
#define DOC_PATH L"..\\..\\Docs\\Help\\"
|
||||
#endif
|
||||
|
||||
#include "StringUtils.h"
|
||||
|
||||
91
Src/Common.props
Normal file
@@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<!-- Default product version to use if CS_VERSION environment variable is not defined -->
|
||||
<CS_VERSION Condition="'$(CS_VERSION)'==''">4.4.1000</CS_VERSION>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- Output paths -->
|
||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
||||
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)\</OutDir>
|
||||
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||
<OutDir>$(MSBuildThisFileDirectory)..\build\bin\$(Configuration)64\</OutDir>
|
||||
<IntDir>$(MSBuildThisFileDirectory)..\build\obj\$(ProjectName)\$(Configuration)64\</IntDir>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- Common settings for all configurations -->
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories Condition="'$(ConfigurationType)'!='StaticLibrary'">$(MSBuildThisFileDirectory)Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Midl>
|
||||
<MkTypLibCompatible>false</MkTypLibCompatible>
|
||||
<GenerateStublessProxies>true</GenerateStublessProxies>
|
||||
<ValidateAllParameters>true</ValidateAllParameters>
|
||||
</Midl>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_PRODUCT_VERSION=$(CS_VERSION.Replace('.', ',')),0;_PRODUCT_VERSION_STR=\"$(CS_VERSION_ORIG)\";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<!-- Debug settings -->
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<!-- Non-Debug settings -->
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'!='Debug'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Setup'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>BUILD_SETUP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemGroup />
|
||||
</Project>
|
||||
@@ -4,7 +4,6 @@
|
||||
|
||||
#include <stdafx.h>
|
||||
#include "resource.h"
|
||||
#include "..\Setup\UpdateBin\resource.h"
|
||||
#include "DownloadHelper.h"
|
||||
#include "Settings.h"
|
||||
#include "SettingsUIHelper.h"
|
||||
@@ -14,7 +13,7 @@
|
||||
#include "FNVHash.h"
|
||||
#include "StringUtils.h"
|
||||
#include "Translations.h"
|
||||
#include "json.hpp"
|
||||
#include <nlohmann/json.hpp>
|
||||
#include <wininet.h>
|
||||
#include <softpub.h>
|
||||
|
||||
@@ -371,60 +370,6 @@ static DWORD WINAPI ThreadVersionCheck( void *param )
|
||||
data.bNewVersion=(data.newVersion>curVersion);
|
||||
data.bIgnoreVersion=(data.bNewVersion && data.newVersion<=remindedVersion);
|
||||
}
|
||||
{
|
||||
wchar_t languages[100]={0};
|
||||
CString language2=GetSettingString(L"Language");
|
||||
if (!language2.IsEmpty())
|
||||
{
|
||||
Strcpy(languages,_countof(languages)-1,language2);
|
||||
}
|
||||
else
|
||||
{
|
||||
ULONG size=0;
|
||||
ULONG len=_countof(languages);
|
||||
GetUserPreferredUILanguages(MUI_LANGUAGE_NAME,&size,languages,&len);
|
||||
}
|
||||
|
||||
bool bNewLanguage=false;
|
||||
for (wchar_t *lang=languages;*lang;lang+=Strlen(lang)+1)
|
||||
{
|
||||
if (_wcsicmp(lang,L"en")==0 || _wcsnicmp(lang,L"en-",3)==0)
|
||||
break; // English
|
||||
DWORD dllVersion=0, dllBuild=0;
|
||||
HINSTANCE resInstance=LoadTranslationDll(lang);
|
||||
if (resInstance)
|
||||
{
|
||||
dllVersion=GetVersionEx(resInstance,&dllBuild);
|
||||
FreeLibrary(resInstance);
|
||||
}
|
||||
|
||||
DWORD newVersion=0, newBuild=0;
|
||||
for (std::vector<LanguageVersionData>::const_iterator it=data.languages.begin();it!=data.languages.end();++it)
|
||||
{
|
||||
if (_wcsicmp(it->language,lang)==0)
|
||||
{
|
||||
newVersion=it->version;
|
||||
newBuild=it->build;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (newVersion==0)
|
||||
continue;
|
||||
|
||||
if (newVersion>dllVersion || (newVersion==dllVersion && newBuild>dllBuild))
|
||||
{
|
||||
// a new DLL for this language exists
|
||||
data.bNewLanguage=true;
|
||||
data.newLanguage=lang;
|
||||
data.encodedLangVersion=(newVersion&0xFFFF0000)|((newVersion&0xFF)<<8)|(newBuild&0xFF);
|
||||
DWORD remindedVersion;
|
||||
if (regKey.QueryDWORDValue(L"RemindedLangVersion",remindedVersion)!=ERROR_SUCCESS)
|
||||
remindedVersion=0;
|
||||
data.bIgnoreLanguage=(data.encodedLangVersion<=remindedVersion);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
data.bValid=true;
|
||||
if (params.check==CHECK_UPDATE)
|
||||
@@ -433,7 +378,7 @@ static DWORD WINAPI ThreadVersionCheck( void *param )
|
||||
g_bCheckingVersion=false;
|
||||
return 1;
|
||||
}
|
||||
if ((data.bNewVersion && !data.bIgnoreVersion) || (data.bNewLanguage && !data.bIgnoreLanguage))
|
||||
if (data.bNewVersion && !data.bIgnoreVersion)
|
||||
params.callback(data);
|
||||
g_bCheckingVersion=false;
|
||||
return 0;
|
||||
@@ -576,39 +521,6 @@ static CString LoadStringEx( HMODULE hModule, int stringId, int langId )
|
||||
return res;
|
||||
}
|
||||
|
||||
static BOOL CALLBACK EnumStringLanguages( HMODULE hModule, LPCTSTR lpszType, LPCTSTR lpszName, WORD wIDLanguage, LONG_PTR lParam )
|
||||
{
|
||||
VersionData &data=*(VersionData*)lParam;
|
||||
CString url=LoadStringEx(hModule,IDS_LNG_URL,wIDLanguage);
|
||||
if (url.IsEmpty()) return TRUE;
|
||||
CString ver=LoadStringEx(hModule,IDS_LNG_VERSION,wIDLanguage);
|
||||
if (ver.IsEmpty()) return TRUE;
|
||||
CString crc=LoadStringEx(hModule,IDS_LNG_CRC,wIDLanguage);
|
||||
if (crc.IsEmpty()) return TRUE;
|
||||
|
||||
LanguageVersionData langData;
|
||||
langData.bBasic=(ver[ver.GetLength()-1]=='*');
|
||||
|
||||
int v1, v2, v3, v4;
|
||||
if (swscanf_s(ver,L"%d.%d.%d.%d",&v1,&v2,&v3,&v4)==4)
|
||||
{
|
||||
wchar_t buf[100];
|
||||
if (GetLocaleInfo(wIDLanguage,LOCALE_SNAME,buf,_countof(buf)))
|
||||
{
|
||||
langData.languageId=wIDLanguage;
|
||||
langData.language=buf;
|
||||
langData.version=(v1<<24)|(v2<<16)|v3;
|
||||
langData.build=v4;
|
||||
langData.url=url;
|
||||
wchar_t *q;
|
||||
langData.hash=wcstoul(crc,&q,16);
|
||||
data.languages.push_back(langData);
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static bool VerifyDigitalCertificate( const wchar_t *fname, const wchar_t *signer )
|
||||
{
|
||||
// verify the certificate
|
||||
@@ -710,38 +622,24 @@ static bool VerifyDigitalCertificate( const wchar_t *fname, const wchar_t *signe
|
||||
void VersionData::Clear( void )
|
||||
{
|
||||
bValid=false;
|
||||
newVersion=encodedLangVersion=0;
|
||||
newVersion=0;
|
||||
downloadUrl.Empty();
|
||||
downloadSigner.Empty();
|
||||
news.Empty();
|
||||
updateLink.Empty();
|
||||
languageLink.Empty();
|
||||
altUrl.Empty();
|
||||
bNewVersion=bIgnoreVersion=bNewLanguage=bIgnoreLanguage=false;
|
||||
newLanguage.Empty();
|
||||
for (std::vector<LanguageVersionData>::iterator it=languages.begin();it!=languages.end();++it)
|
||||
if (it->bitmap)
|
||||
DeleteObject(it->bitmap);
|
||||
languages.clear();
|
||||
updateLink="https://github.com/Open-Shell/Open-Shell-Menu/releases";
|
||||
bNewVersion=bIgnoreVersion=false;
|
||||
}
|
||||
|
||||
void VersionData::Swap( VersionData &data )
|
||||
{
|
||||
std::swap(bValid,data.bValid);
|
||||
std::swap(newVersion,data.newVersion);
|
||||
std::swap(encodedLangVersion,data.encodedLangVersion);
|
||||
std::swap(downloadUrl,data.downloadUrl);
|
||||
std::swap(downloadSigner,data.downloadSigner);
|
||||
std::swap(news,data.news);
|
||||
std::swap(updateLink,data.updateLink);
|
||||
std::swap(languageLink,data.languageLink);
|
||||
std::swap(altUrl,data.altUrl);
|
||||
std::swap(bNewVersion,data.bNewVersion);
|
||||
std::swap(bIgnoreVersion,data.bIgnoreVersion);
|
||||
std::swap(bNewLanguage,data.bNewLanguage);
|
||||
std::swap(bIgnoreLanguage,data.bIgnoreLanguage);
|
||||
std::swap(newLanguage,data.newLanguage);
|
||||
std::swap(languages,data.languages);
|
||||
}
|
||||
|
||||
std::vector<char> DownloadUrl(const wchar_t* url)
|
||||
@@ -850,69 +748,6 @@ VersionData::TLoadResult VersionData::Load(bool official)
|
||||
}
|
||||
}
|
||||
|
||||
VersionData::TLoadResult VersionData::Load( const wchar_t *fname, bool bLoadFlags )
|
||||
{
|
||||
Clear();
|
||||
if (!VerifyDigitalCertificate(fname,L"Ivaylo Beltchev"))
|
||||
return LOAD_BAD_FILE;
|
||||
|
||||
HMODULE hModule=LoadLibraryEx(fname,NULL,LOAD_LIBRARY_AS_DATAFILE|LOAD_LIBRARY_AS_IMAGE_RESOURCE);
|
||||
if (!hModule) return LOAD_BAD_FILE;
|
||||
|
||||
if (GetVersionEx(hModule)!=GetVersionEx(g_Instance))
|
||||
{
|
||||
FreeLibrary(hModule);
|
||||
return LOAD_BAD_VERSION;
|
||||
}
|
||||
|
||||
wchar_t defLang[100]=L"";
|
||||
{
|
||||
CRegKey regKeyLng;
|
||||
if (regKeyLng.Open(HKEY_LOCAL_MACHINE,L"Software\\OpenShell\\OpenShell",KEY_READ|KEY_WOW64_64KEY)==ERROR_SUCCESS)
|
||||
{
|
||||
ULONG size=_countof(defLang);
|
||||
if (regKeyLng.QueryStringValue(L"DefaultLanguage",defLang,&size)!=ERROR_SUCCESS)
|
||||
defLang[0]=0;
|
||||
}
|
||||
}
|
||||
|
||||
const int DEFAULT_LANGUAGE=0x409;
|
||||
|
||||
int defLangId;
|
||||
if (!defLang[0] || !GetLocaleInfoEx(defLang,LOCALE_ILANGUAGE|LOCALE_RETURN_NUMBER,(LPWSTR)&defLangId,4))
|
||||
defLangId=DEFAULT_LANGUAGE;
|
||||
|
||||
downloadUrl=LoadStringEx(hModule,IDS_INSTALL_URL,defLangId);
|
||||
// these are always in en-US
|
||||
downloadSigner=LoadStringEx(hModule,IDS_INSTALL_SIGNER,DEFAULT_LANGUAGE);
|
||||
CString strVer=LoadStringEx(hModule,IDS_VERSION,defLangId);
|
||||
if (strVer.IsEmpty())
|
||||
strVer=LoadStringEx(hModule,IDS_VERSION,DEFAULT_LANGUAGE);
|
||||
updateLink=LoadStringEx(hModule,IDS_UPDATE_LINK,DEFAULT_LANGUAGE);
|
||||
languageLink=LoadStringEx(hModule,IDS_LANGUAGE_LINK,DEFAULT_LANGUAGE);
|
||||
altUrl=LoadStringEx(hModule,IDS_ALT_URL,DEFAULT_LANGUAGE);
|
||||
|
||||
int v1, v2, v3;
|
||||
if (!downloadUrl.IsEmpty() && swscanf_s(strVer,L"%d.%d.%d",&v1,&v2,&v3)==3)
|
||||
{
|
||||
newVersion=(v1<<24)|(v2<<16)|v3;
|
||||
news=LoadStringEx(hModule,IDS_NEWS,defLangId);
|
||||
if (news.IsEmpty())
|
||||
news=LoadStringEx(hModule,IDS_NEWS,DEFAULT_LANGUAGE);
|
||||
|
||||
EnumResourceLanguages(hModule,RT_STRING,MAKEINTRESOURCE((IDS_LNG_URL>>4)+1),EnumStringLanguages,(LONG_PTR)this);
|
||||
for (std::vector<LanguageVersionData>::iterator it=languages.begin();it!=languages.end();++it)
|
||||
it->bitmap=(HBITMAP)LoadImage(hModule,MAKEINTRESOURCE(it->languageId),IMAGE_BITMAP,22,27,LR_CREATEDIBSECTION);
|
||||
}
|
||||
|
||||
FreeLibrary(hModule);
|
||||
|
||||
if (newVersion && !downloadUrl.IsEmpty() && !news.IsEmpty())
|
||||
return LOAD_OK;
|
||||
Clear();
|
||||
return LOAD_ERROR;
|
||||
}
|
||||
|
||||
struct DownloadFileParams
|
||||
{
|
||||
// input
|
||||
@@ -989,82 +824,6 @@ static DWORD WINAPI ThreadDownloadFile( void *param )
|
||||
return 0;
|
||||
}
|
||||
|
||||
DWORD DownloadLanguageDll( HWND owner, TSettingsComponent component, const LanguageVersionData &data, CString &error )
|
||||
{
|
||||
// download file
|
||||
wchar_t path[_MAX_PATH]=L"%ALLUSERSPROFILE%\\OpenShell\\Languages";
|
||||
DoEnvironmentSubst(path,_countof(path));
|
||||
SHCreateDirectory(NULL,path);
|
||||
wchar_t fname[_MAX_PATH];
|
||||
Sprintf(fname,_countof(fname),L"%s.dll",data.language);
|
||||
|
||||
CProgressDlg progress;
|
||||
progress.Create(owner,LoadStringEx(IDS_PROGRESS_TITLE_DOWNLOAD));
|
||||
|
||||
DownloadFileParams params;
|
||||
params.url=data.url;
|
||||
params.signer=NULL;
|
||||
params.hash=data.hash;
|
||||
params.path=path;
|
||||
params.fname=fname;
|
||||
params.progress=&progress;
|
||||
params.bAcceptCached=true;
|
||||
params.component=component;
|
||||
|
||||
HANDLE hThread=CreateThread(NULL,0,ThreadDownloadFile,¶ms,0,NULL);
|
||||
|
||||
while (1)
|
||||
{
|
||||
DWORD wait=MsgWaitForMultipleObjects(1,&hThread,FALSE,INFINITE,QS_ALLINPUT);
|
||||
if (wait!=WAIT_OBJECT_0+1)
|
||||
break;
|
||||
MSG msg;
|
||||
while (PeekMessage(&msg,0,0,0,PM_REMOVE))
|
||||
{
|
||||
TranslateMessage(&msg);
|
||||
DispatchMessage(&msg);
|
||||
}
|
||||
}
|
||||
progress.DestroyWindow();
|
||||
CloseHandle(hThread);
|
||||
|
||||
if (params.downloadRes==DOWNLOAD_CANCEL)
|
||||
return 2;
|
||||
if (params.downloadRes==DOWNLOAD_INTERNET)
|
||||
{
|
||||
error=LoadStringEx(IDS_INTERNET_FAIL);
|
||||
return 0;
|
||||
}
|
||||
else if (params.downloadRes==DOWNLOAD_START)
|
||||
{
|
||||
error=LoadStringEx(IDS_INITIATE_FAIL);
|
||||
return 0;
|
||||
}
|
||||
else if (params.downloadRes==DOWNLOAD_FAIL)
|
||||
{
|
||||
error=LoadStringEx(IDS_LANG_DOWNLOAD_FAIL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (params.saveRes)
|
||||
{
|
||||
wchar_t msg[256];
|
||||
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_IGNORE_INSERTS,NULL,params.saveRes,0,msg,_countof(msg),NULL);
|
||||
error.Format(LoadStringEx(IDS_LANG_SAVE_FAIL),params.fname);
|
||||
error+="\r\n";
|
||||
error+=msg;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!params.valid)
|
||||
{
|
||||
error=LoadStringEx(IDS_LANG_DOWNLOAD_FAIL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
DWORD DownloadNewVersion( HWND owner, TSettingsComponent component, const wchar_t *url, const wchar_t *signer, CString &fname, CString &error )
|
||||
{
|
||||
CComString pPath;
|
||||
|
||||
@@ -15,37 +15,16 @@ enum TVersionCheck
|
||||
|
||||
enum TSettingsComponent;
|
||||
|
||||
struct LanguageVersionData
|
||||
{
|
||||
CString language;
|
||||
CString url;
|
||||
DWORD version;
|
||||
DWORD build;
|
||||
DWORD hash;
|
||||
bool bBasic;
|
||||
WORD languageId;
|
||||
HBITMAP bitmap;
|
||||
|
||||
LanguageVersionData( void ) { bBasic=false; bitmap=NULL; }
|
||||
};
|
||||
|
||||
struct VersionData
|
||||
{
|
||||
bool bValid = false;
|
||||
DWORD newVersion = 0;
|
||||
DWORD encodedLangVersion = 0;
|
||||
CString downloadUrl;
|
||||
CString downloadSigner;
|
||||
CString news;
|
||||
CString updateLink;
|
||||
CString languageLink;
|
||||
CString altUrl;
|
||||
bool bNewVersion = false;
|
||||
bool bIgnoreVersion = false;
|
||||
bool bNewLanguage = false;
|
||||
bool bIgnoreLanguage = false;
|
||||
CString newLanguage;
|
||||
std::vector<LanguageVersionData> languages;
|
||||
|
||||
~VersionData( void ) { Clear(); }
|
||||
void Clear( void );
|
||||
@@ -60,7 +39,6 @@ struct VersionData
|
||||
};
|
||||
|
||||
TLoadResult Load(bool official);
|
||||
TLoadResult Load( const wchar_t *fname, bool bLoadFlags );
|
||||
private:
|
||||
void operator=( const VersionData& );
|
||||
};
|
||||
@@ -69,5 +47,4 @@ typedef void (*tNewVersionCallback)( VersionData &data );
|
||||
|
||||
// 0 - fail, 1 - success, 2 - cancel
|
||||
DWORD CheckForNewVersion( HWND owner, TSettingsComponent component, TVersionCheck check, tNewVersionCallback callback );
|
||||
DWORD DownloadLanguageDll( HWND owner, TSettingsComponent component, const LanguageVersionData &data, CString &error );
|
||||
DWORD DownloadNewVersion( HWND owner, TSettingsComponent component, const wchar_t *url, const wchar_t *signer, CString &fname, CString &error );
|
||||
|
||||
@@ -68,17 +68,13 @@ public:
|
||||
MESSAGE_HANDLER( WM_INITDIALOG, OnInitDialog )
|
||||
MESSAGE_HANDLER( WM_DESTROY, OnDestroy )
|
||||
MESSAGE_HANDLER( WM_SIZE, OnSize )
|
||||
COMMAND_ID_HANDLER( IDC_BUTTONCHECK, OnCheckUpdates )
|
||||
NOTIFY_HANDLER( IDC_LISTLANGUAGE, LVN_ITEMCHANGED, OnSelChange )
|
||||
NOTIFY_HANDLER( IDC_LISTLANGUAGE, LVN_ITEMCHANGING, OnSelChanging )
|
||||
NOTIFY_HANDLER( IDC_LISTLANGUAGE, NM_CUSTOMDRAW, OnCustomDraw )
|
||||
NOTIFY_HANDLER( IDC_LINKDOWNLOAD, NM_CLICK, OnDownload )
|
||||
END_MSG_MAP()
|
||||
|
||||
BEGIN_RESIZE_MAP
|
||||
RESIZE_CONTROL(IDC_LISTLANGUAGE,MOVE_SIZE_X|MOVE_SIZE_Y)
|
||||
RESIZE_CONTROL(IDC_BUTTONCHECK,MOVE_MOVE_Y)
|
||||
RESIZE_CONTROL(IDC_LINKDOWNLOAD,MOVE_SIZE_X|MOVE_MOVE_Y)
|
||||
END_RESIZE_MAP
|
||||
|
||||
void SetGroup( CSetting *pGroup );
|
||||
@@ -92,11 +88,9 @@ protected:
|
||||
LRESULT OnInitDialog( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled );
|
||||
LRESULT OnDestroy( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled );
|
||||
LRESULT OnSize( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled );
|
||||
LRESULT OnCheckUpdates( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled );
|
||||
LRESULT OnSelChange( int idCtrl, LPNMHDR pnmh, BOOL& bHandled );
|
||||
LRESULT OnSelChanging( int idCtrl, LPNMHDR pnmh, BOOL& bHandled );
|
||||
LRESULT OnCustomDraw( int idCtrl, LPNMHDR pnmh, BOOL& bHandled );
|
||||
LRESULT OnDownload( int idCtrl, LPNMHDR pnmh, BOOL& bHandled );
|
||||
|
||||
private:
|
||||
CSetting *m_pSetting;
|
||||
@@ -114,17 +108,12 @@ private:
|
||||
bool operator<( const LangInfo &info ) { return _wcsicmp(name,info.name)<0; }
|
||||
};
|
||||
std::vector<LangInfo> m_LanguageIDs; // the order matches the items in the listbox
|
||||
static VersionData s_VersionData;
|
||||
static void NewVersionCallback( VersionData &data );
|
||||
|
||||
void UpdateFlags( void );
|
||||
void UpdateLink( const wchar_t *language );
|
||||
|
||||
void AddFlag( const wchar_t *langName, int langId, HBITMAP bmp );
|
||||
};
|
||||
|
||||
VersionData CLanguageSettingsDlg::s_VersionData;
|
||||
|
||||
void CLanguageSettingsDlg::AddFlag( const wchar_t *langName, int langId, HBITMAP bmp )
|
||||
{
|
||||
int idx=1;
|
||||
@@ -156,39 +145,6 @@ void CLanguageSettingsDlg::AddFlag( const wchar_t *langName, int langId, HBITMAP
|
||||
|
||||
void CLanguageSettingsDlg::UpdateFlags( void )
|
||||
{
|
||||
// add flags from s_VersionData
|
||||
for (std::vector<LanguageVersionData>::const_iterator it=s_VersionData.languages.begin();it!=s_VersionData.languages.end();++it)
|
||||
{
|
||||
if (it->bitmap)
|
||||
{
|
||||
BITMAPINFO bi={0};
|
||||
bi.bmiHeader.biSize=sizeof(BITMAPINFOHEADER);
|
||||
bi.bmiHeader.biWidth=m_bLargeFlags?32:24;
|
||||
bi.bmiHeader.biHeight=m_bLargeFlags?16:11;
|
||||
bi.bmiHeader.biPlanes=1;
|
||||
bi.bmiHeader.biBitCount=32;
|
||||
|
||||
HDC hdc=CreateCompatibleDC(NULL);
|
||||
HBITMAP bmp=CreateDIBSection(hdc,&bi,DIB_RGB_COLORS,NULL,NULL,0);
|
||||
HGDIOBJ bmp0=SelectObject(hdc,bmp);
|
||||
HDC hsrc=CreateCompatibleDC(hdc);
|
||||
HGDIOBJ bmp02=SelectObject(hsrc,it->bitmap);
|
||||
SetDCBrushColor(hdc,0xFF00FF);
|
||||
RECT rc={0,0,bi.bmiHeader.biWidth,bi.bmiHeader.biHeight};
|
||||
FillRect(hdc,&rc,(HBRUSH)GetStockObject(DC_BRUSH));
|
||||
if (m_bLargeFlags)
|
||||
BitBlt(hdc,3,0,22,16,hsrc,0,11,SRCCOPY);
|
||||
else
|
||||
BitBlt(hdc,2,0,16,11,hsrc,0,0,SRCCOPY);
|
||||
SelectObject(hsrc,bmp02);
|
||||
DeleteDC(hsrc);
|
||||
SelectObject(hdc,bmp0);
|
||||
DeleteDC(hdc);
|
||||
AddFlag(it->language,it->languageId,bmp);
|
||||
DeleteObject(bmp);
|
||||
}
|
||||
}
|
||||
|
||||
// add flags from dlls
|
||||
for (int pass=0;pass<2;pass++)
|
||||
{
|
||||
@@ -288,7 +244,6 @@ LRESULT CLanguageSettingsDlg::OnInitDialog( UINT uMsg, WPARAM wParam, LPARAM lPa
|
||||
ListView_SetExtendedListViewStyleEx(list,LVS_EX_DOUBLEBUFFER,LVS_EX_DOUBLEBUFFER);
|
||||
LVCOLUMN column={LVCF_WIDTH,0,rc.right-rc.left};
|
||||
ListView_InsertColumn(list,0,&column);
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,L"");
|
||||
|
||||
m_LanguageIDs.resize(_countof(g_LanguageIDs)+1);
|
||||
{
|
||||
@@ -331,11 +286,6 @@ LRESULT CLanguageSettingsDlg::OnInitDialog( UINT uMsg, WPARAM wParam, LPARAM lPa
|
||||
ListView_InsertItem(list,&item);
|
||||
}
|
||||
|
||||
// parse update.ver in data and add all flags
|
||||
wchar_t path[_MAX_PATH]=L"%ALLUSERSPROFILE%\\OpenShell\\update.ver";
|
||||
DoEnvironmentSubst(path,_countof(path));
|
||||
s_VersionData.bValid=(s_VersionData.Load(path,true)==VersionData::LOAD_OK);
|
||||
|
||||
UpdateFlags();
|
||||
|
||||
m_Tooltip.Create(TOOLTIPS_CLASS,m_hWnd,NULL,NULL,WS_POPUP|TTS_NOPREFIX);
|
||||
@@ -359,40 +309,6 @@ LRESULT CLanguageSettingsDlg::OnSize( UINT uMsg, WPARAM wParam, LPARAM lParam, B
|
||||
return 0;
|
||||
}
|
||||
|
||||
void CLanguageSettingsDlg::NewVersionCallback( VersionData &data )
|
||||
{
|
||||
s_VersionData.Swap(data);
|
||||
}
|
||||
|
||||
LRESULT CLanguageSettingsDlg::OnCheckUpdates( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled )
|
||||
{
|
||||
DWORD res=CheckForNewVersion(m_hWnd,m_Component,CHECK_UPDATE,NewVersionCallback);
|
||||
if (res==2) return 0;
|
||||
if (res)
|
||||
{
|
||||
UpdateFlags();
|
||||
CString language=GetSettingString(L"Language");
|
||||
CWindow list=GetDlgItem(IDC_LISTLANGUAGE);
|
||||
for (int idx=0;idx<(int)m_LanguageIDs.size();idx++)
|
||||
{
|
||||
const wchar_t *name=idx>0?m_LanguageIDs[idx].name.GetString():L"";
|
||||
if (_wcsicmp(language,name)==0)
|
||||
{
|
||||
ListView_SetItemState(list,idx,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED);
|
||||
ListView_EnsureVisible(list,idx,FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
UpdateLink(language);
|
||||
}
|
||||
else
|
||||
{
|
||||
s_VersionData.Clear();
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,LoadStringEx(IDS_LANGUAGE_FAIL));
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
LRESULT CLanguageSettingsDlg::OnSelChange( int idCtrl, LPNMHDR pnmh, BOOL& bHandled )
|
||||
{
|
||||
// set setting
|
||||
@@ -411,7 +327,6 @@ LRESULT CLanguageSettingsDlg::OnSelChange( int idCtrl, LPNMHDR pnmh, BOOL& bHand
|
||||
m_pSetting->flags|=CSetting::FLAG_DEFAULT;
|
||||
else
|
||||
m_pSetting->flags&=~CSetting::FLAG_DEFAULT;
|
||||
UpdateLink(name);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -448,41 +363,6 @@ static HRESULT CALLBACK TaskDialogCallbackProc( HWND hwnd, UINT uNotification, W
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
LRESULT CLanguageSettingsDlg::OnDownload( int idCtrl, LPNMHDR pnmh, BOOL& bHandled )
|
||||
{
|
||||
CString language=GetSettingString(L"Language");
|
||||
if (language.IsEmpty())
|
||||
language=m_LanguageIDs[0].name;
|
||||
|
||||
for (std::vector<LanguageVersionData>::const_iterator it=s_VersionData.languages.begin();it!=s_VersionData.languages.end();++it)
|
||||
{
|
||||
if (_wcsicmp(it->language,language)==0)
|
||||
{
|
||||
CString error;
|
||||
DWORD res=DownloadLanguageDll(m_hWnd,m_Component,*it,error);
|
||||
if (res==2)
|
||||
return 0;
|
||||
if (res)
|
||||
MessageBox(LoadStringEx(it->bBasic?IDS_LANGUAGE_SUCCESS2:IDS_LANGUAGE_SUCCESS),LoadStringEx(IDS_UPDATE_TITLE),MB_OK|(it->bBasic?MB_ICONWARNING:MB_ICONINFORMATION));
|
||||
else
|
||||
{
|
||||
if (!s_VersionData.languageLink.IsEmpty())
|
||||
error+=L" "+LoadStringEx(IDS_DOWNLOAD_TIP)+L"\r\n\r\n"+s_VersionData.languageLink;
|
||||
TASKDIALOGCONFIG task={sizeof(task),m_hWnd,NULL,TDF_ENABLE_HYPERLINKS|TDF_ALLOW_DIALOG_CANCELLATION|TDF_USE_HICON_MAIN,TDCBF_OK_BUTTON};
|
||||
CString title=LoadStringEx(IDS_UPDATE_TITLE);
|
||||
task.pszWindowTitle=title;
|
||||
task.pszContent=error;
|
||||
task.hMainIcon=LoadIcon(NULL,IDI_ERROR);
|
||||
task.pfCallback=TaskDialogCallbackProc;
|
||||
TaskDialogIndirect(&task,NULL,NULL,NULL);
|
||||
}
|
||||
UpdateLink(language);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void CLanguageSettingsDlg::SetGroup( CSetting *pGroup )
|
||||
{
|
||||
m_bLocked=false;
|
||||
@@ -504,7 +384,6 @@ void CLanguageSettingsDlg::SetGroup( CSetting *pGroup )
|
||||
break;
|
||||
}
|
||||
}
|
||||
UpdateLink(m_pSetting->value.bstrVal);
|
||||
m_bLocked=m_pSetting->IsLocked();
|
||||
|
||||
TOOLINFO tool={sizeof(tool),0,m_hWnd,'CLSH'};
|
||||
@@ -517,52 +396,6 @@ void CLanguageSettingsDlg::SetGroup( CSetting *pGroup )
|
||||
ListView_SetBkColor(list,GetSysColor(m_bLocked?COLOR_BTNFACE:COLOR_WINDOW));
|
||||
}
|
||||
|
||||
void CLanguageSettingsDlg::UpdateLink( const wchar_t *language )
|
||||
{
|
||||
TOOLINFO tool={sizeof(tool),TTF_SUBCLASS|TTF_IDISHWND,m_hWnd,'CLSH'};
|
||||
tool.uId=(UINT_PTR)GetDlgItem(IDC_LINKDOWNLOAD).m_hWnd;
|
||||
m_Tooltip.SendMessage(TTM_DELTOOL,0,(LPARAM)&tool);
|
||||
|
||||
if (!s_VersionData.bValid)
|
||||
{
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,L"");
|
||||
return;
|
||||
}
|
||||
if (!*language)
|
||||
language=m_LanguageIDs[0].name;
|
||||
|
||||
wchar_t text[1024];
|
||||
for (std::vector<LanguageVersionData>::const_iterator it=s_VersionData.languages.begin();it!=s_VersionData.languages.end();++it)
|
||||
{
|
||||
if (_wcsicmp(it->language,language)==0)
|
||||
{
|
||||
DWORD dllVersion=0, dllBuild=0;
|
||||
HINSTANCE resInstance=LoadTranslationDll(language);
|
||||
if (resInstance)
|
||||
{
|
||||
dllVersion=GetVersionEx(resInstance,&dllBuild);
|
||||
FreeLibrary(resInstance);
|
||||
}
|
||||
if (it->version>dllVersion || (it->version==dllVersion && it->build>dllBuild))
|
||||
{
|
||||
Sprintf(text,_countof(text),LoadStringEx(IDS_LANGUAGE_DOWNLOAD),language);
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,text);
|
||||
|
||||
tool.lpszText=(LPWSTR)(LPCWSTR)it->url;
|
||||
m_Tooltip.SendMessage(TTM_ADDTOOL,0,(LPARAM)&tool);
|
||||
}
|
||||
else
|
||||
{
|
||||
Sprintf(text,_countof(text),LoadStringEx(IDS_LANGUAGE_UPDATED),language);
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,text);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
Sprintf(text,_countof(text),LoadStringEx(IDS_LANGUAGE_MISSING),language);
|
||||
SetDlgItemText(IDC_LINKDOWNLOAD,text);
|
||||
}
|
||||
|
||||
class CLanguageSettingsPanel: public ISettingsPanel
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -98,8 +98,6 @@ FONT 9, "Segoe UI", 400, 0, 0x0
|
||||
BEGIN
|
||||
CONTROL "",IDC_LISTLANGUAGE,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,7,18,302,99
|
||||
LTEXT "Select a language for the user interface:",IDC_STATICHINT,7,7,131,8
|
||||
PUSHBUTTON "&Check for Updates",IDC_BUTTONCHECK,7,123,75,14
|
||||
CONTROL "download link goes here",IDC_LINKDOWNLOAD,"SysLink",WS_TABSTOP,85,126,224,10
|
||||
END
|
||||
|
||||
IDD_CUSTOMTREE DIALOGEX 0, 0, 365, 183
|
||||
@@ -279,20 +277,12 @@ BEGIN
|
||||
IDS_SETTING_SEARCH "Search Results"
|
||||
IDS_WEBSITE_TIP "Visit Open-Shell on the web - https://open-shell.github.io/Open-Shell-Menu"
|
||||
IDS_LOCATE_SETTING "Locate setting"
|
||||
IDS_LANGUAGE_UPDATED "The language %s is up to date."
|
||||
IDS_LANGUAGE_MISSING "Update for language %s is not available."
|
||||
IDS_LANGUAGE_DOWNLOAD "New update for language %s is available. <a>Click here to install it.</a>"
|
||||
IDS_LANGUAGE_SUCCESS "The language file was installed successfully.\nYou need to log off and back on for the update to take effect."
|
||||
IDS_LANGUAGE_SUCCESS2 "The language file was installed successfully.\nYou need to log off and back on for the update to take effect.\n\nNote: This update provides only basic translations. It supports only the main text found in the start menu and in Explorer. The settings will not be translated."
|
||||
IDS_LANGUAGE_FAIL "Failed to check for updates."
|
||||
IDS_INTERNET_FAIL "Failed to connect to the Internet."
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_INITIATE_FAIL "Failed to initiate the download."
|
||||
IDS_LANG_DOWNLOAD_FAIL "Failed to download the language file."
|
||||
IDS_LANG_SAVE_FAIL "Failed to save language file '%s'."
|
||||
IDS_UPDATE_TITLE "Open-Shell Update"
|
||||
IDS_INST_DOWNLOAD_FAIL "Failed to download the new version."
|
||||
IDS_INST_SAVE_FAIL "Failed to save file '%s'."
|
||||
@@ -308,11 +298,6 @@ BEGIN
|
||||
IDS_UNSAVED_TITLE "Unsaved changes"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_VERSION_URL "http://www.classicshell.net/files/updates/update_"
|
||||
END
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -25,130 +25,31 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<UseOfAtl>Static</UseOfAtl>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>$(Configuration)64\</OutDir>
|
||||
<IntDir>$(Configuration)64\</IntDir>
|
||||
<PropertyGroup>
|
||||
<OutDir>$(IntDir)</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>APPVEYOR_REPO_COMMIT="$(APPVEYOR_REPO_COMMIT)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Lib>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<TargetMachine Condition="'$(Platform)'=='Win32'">MachineX86</TargetMachine>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\Setup\OpenShell.ico" />
|
||||
<Image Include="flags.bmp" />
|
||||
@@ -200,7 +101,17 @@
|
||||
<ClCompile Include="TrackResources.cpp" />
|
||||
<ClCompile Include="Translations.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="..\packages\nlohmann.json.3.11.2\build\native\nlohmann.json.targets" Condition="Exists('..\packages\nlohmann.json.3.11.2\build\native\nlohmann.json.targets')" />
|
||||
</ImportGroup>
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\nlohmann.json.3.11.2\build\native\nlohmann.json.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\nlohmann.json.3.11.2\build\native\nlohmann.json.targets'))" />
|
||||
</Target>
|
||||
</Project>
|
||||
@@ -149,4 +149,7 @@
|
||||
<Filter>Lib</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -920,7 +920,7 @@ HFONT CreateFontSetting( const wchar_t *fontStr, int dpi )
|
||||
weight=FW_BOLD, bItalic=true;
|
||||
str=GetToken(str,token,_countof(token),L", \t");
|
||||
int size=-_wtol(token);
|
||||
return CreateFont(size*dpi/72,0,0,0,weight,bItalic?1:0,0,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,name);
|
||||
return CreateFont(MulDiv(size,dpi,72),0,0,0,weight,bItalic?1:0,0,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,name);
|
||||
}
|
||||
|
||||
static UINT WINAPI GetDpiForWindow(HWND hwnd)
|
||||
|
||||
@@ -13,17 +13,12 @@
|
||||
#include <Uxtheme.h>
|
||||
#include <VSStyle.h>
|
||||
#include <propkey.h>
|
||||
#include <propvarutil.h>
|
||||
#include <htmlhelp.h>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
#include <algorithm>
|
||||
|
||||
#ifdef BUILD_SETUP
|
||||
#define DOC_PATH L""
|
||||
#else
|
||||
#define DOC_PATH L"..\\..\\Docs\\Help\\"
|
||||
#endif
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Read/Write lock for accessing the settings. Can't be acquired recursively. Only the main UI thread (the one displaying the settings UI)
|
||||
@@ -984,7 +979,7 @@ void CSettingsManager::ResetSettings( void )
|
||||
HIMAGELIST CSettingsManager::GetImageList( HWND tree )
|
||||
{
|
||||
if (m_ImageList) return m_ImageList;
|
||||
HTHEME theme=OpenThemeData(tree,L"button");
|
||||
HTHEME theme=OpenThemeData(GetParent(tree),L"button");
|
||||
HDC hdc=CreateCompatibleDC(NULL);
|
||||
int iconSize=(TreeView_GetItemHeight(tree)<32)?16:32;
|
||||
int checkSize=16;
|
||||
@@ -1114,7 +1109,7 @@ class CSettingsDlg: public CResizeableDlg<CSettingsDlg>
|
||||
{
|
||||
public:
|
||||
CSettingsDlg( void );
|
||||
void Init( CSetting *pSettings, ICustomSettings *pCustom, int tab );
|
||||
void Init( CSetting *pSettings, ICustomSettings *pCustom, int tab, const wchar_t* appId );
|
||||
|
||||
BEGIN_MSG_MAP( CSettingsDlg )
|
||||
MESSAGE_HANDLER( WM_INITDIALOG, OnInitDialog )
|
||||
@@ -1188,6 +1183,7 @@ private:
|
||||
bool m_bIgnoreEdit;
|
||||
bool m_bDirty;
|
||||
CString m_FilterText;
|
||||
const wchar_t* m_AppId;
|
||||
|
||||
void AddTabs( int name, const CSetting *pSelect=NULL );
|
||||
void SetCurTab( int index, bool bReset, const CSetting *pSelect=NULL );
|
||||
@@ -1220,15 +1216,17 @@ CSettingsDlg::CSettingsDlg( void )
|
||||
m_bOnTop=false;
|
||||
m_bIgnoreEdit=false;
|
||||
m_bDirty=false;
|
||||
m_AppId=NULL;
|
||||
}
|
||||
|
||||
void CSettingsDlg::Init( CSetting *pSettings, ICustomSettings *pCustom, int tab )
|
||||
void CSettingsDlg::Init( CSetting *pSettings, ICustomSettings *pCustom, int tab, const wchar_t* appId )
|
||||
{
|
||||
m_pSettings=pSettings;
|
||||
m_pCustom=pCustom;
|
||||
m_InitialTab=tab;
|
||||
m_FilterText.Empty();
|
||||
m_bDirty=false;
|
||||
m_AppId=appId;
|
||||
}
|
||||
|
||||
// Subclass the tooltip to delay the tip when the mouse moves from one tree item to the next
|
||||
@@ -1252,17 +1250,19 @@ LRESULT CSettingsDlg::OnInitDialog( UINT uMsg, WPARAM wParam, LPARAM lParam, BOO
|
||||
#ifdef _DEBUG
|
||||
g_bUIThread=true;
|
||||
#endif
|
||||
/*
|
||||
// attempt to make the dialog have its own icon. doesn't work though. the icon changes, but to the default folder icon
|
||||
CComPtr<IPropertyStore> pStore;
|
||||
if (SUCCEEDED(SHGetPropertyStoreForWindow(m_hWnd,IID_IPropertyStore,(void**)&pStore)))
|
||||
|
||||
if (m_AppId)
|
||||
{
|
||||
PROPVARIANT val;
|
||||
val.vt=VT_LPWSTR;
|
||||
val.pwszVal=L"OpenShell.Settings.Dialog";
|
||||
pStore->SetValue(PKEY_AppUserModel_ID,val);
|
||||
// attempt to make the dialog have its own icon
|
||||
CComPtr<IPropertyStore> pStore;
|
||||
if (SUCCEEDED(SHGetPropertyStoreForWindow(m_hWnd,IID_IPropertyStore,(void**)&pStore)))
|
||||
{
|
||||
PROPVARIANT val;
|
||||
InitPropVariantFromString(m_AppId,&val);
|
||||
pStore->SetValue(PKEY_AppUserModel_ID,val);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
InitResize(MOVE_MODAL);
|
||||
HMENU menu=GetSystemMenu(FALSE);
|
||||
bool bAdded=false;
|
||||
@@ -1846,7 +1846,7 @@ bool CSettingsDlg::IsTabValid( void )
|
||||
|
||||
static CSettingsDlg g_SettingsDlg;
|
||||
|
||||
void EditSettings( const wchar_t *title, bool bModal, int tab )
|
||||
void EditSettings( const wchar_t *title, bool bModal, int tab, const wchar_t* appId )
|
||||
{
|
||||
if (g_SettingsDlg.m_hWnd)
|
||||
{
|
||||
@@ -1864,7 +1864,7 @@ void EditSettings( const wchar_t *title, bool bModal, int tab )
|
||||
}
|
||||
DLGTEMPLATE *pTemplate=LoadDialogEx(IDD_SETTINGS);
|
||||
g_SettingsManager.ResetImageList();
|
||||
g_SettingsDlg.Init(g_SettingsManager.GetSettings(),g_SettingsManager.GetCustom(),tab);
|
||||
g_SettingsDlg.Init(g_SettingsManager.GetSettings(),g_SettingsManager.GetCustom(),tab,appId);
|
||||
g_SettingsDlg.Create(NULL,pTemplate);
|
||||
g_SettingsDlg.SetWindowText(title);
|
||||
g_SettingsDlg.SetWindowPos(HWND_TOPMOST,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE|(g_SettingsDlg.GetOnTop()?0:SWP_NOZORDER)|SWP_SHOWWINDOW);
|
||||
@@ -1952,6 +1952,13 @@ bool ImportSettingsXml( const wchar_t *fname )
|
||||
if (error.IsEmpty())
|
||||
{
|
||||
g_SettingsManager.SaveSettings(false);
|
||||
|
||||
// we have successfuly imported settings from XML
|
||||
// so there is no need to show settings dialog when start menu is triggered for the first time
|
||||
CRegKey regKey;
|
||||
if (regKey.Open(HKEY_CURRENT_USER,GetSettingsRegPath())==ERROR_SUCCESS)
|
||||
regKey.SetDWORDValue(L"ShowedStyle2",1);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -2178,7 +2185,7 @@ bool HasHelp( void )
|
||||
GetModuleFileName(_AtlBaseModule.GetResourceInstance(),path,_countof(path));
|
||||
*PathFindFileName(path)=0;
|
||||
wchar_t topic[_MAX_PATH];
|
||||
Sprintf(topic,_countof(topic),L"%s%sOpenShell.chm",path,GetDocRelativePath());
|
||||
Sprintf(topic,_countof(topic),L"%sOpenShell.chm",path);
|
||||
return (GetFileAttributes(topic)!=INVALID_FILE_ATTRIBUTES);
|
||||
}
|
||||
|
||||
@@ -2188,7 +2195,7 @@ void ShowHelp( void )
|
||||
GetModuleFileName(_AtlBaseModule.GetResourceInstance(),path,_countof(path));
|
||||
*PathFindFileName(path)=0;
|
||||
wchar_t topic[_MAX_PATH];
|
||||
Sprintf(topic,_countof(topic),L"%s%sOpenShell.chm::/%s.html",path,GetDocRelativePath(),PathFindFileName(g_SettingsManager.GetRegPath()));
|
||||
Sprintf(topic,_countof(topic),L"%sOpenShell.chm::/%s.html",path,PathFindFileName(g_SettingsManager.GetRegPath()));
|
||||
HtmlHelp(GetDesktopWindow(),topic,HH_DISPLAY_TOPIC,NULL);
|
||||
}
|
||||
|
||||
|
||||
@@ -129,14 +129,13 @@ void InitSettings( CSetting *pSettings, TSettingsComponent component, ICustomSet
|
||||
void LoadSettings( void );
|
||||
void SaveSettings( void );
|
||||
void UpdateDefaultSettings( void );
|
||||
void EditSettings( const wchar_t *title, bool bModal, int tab );
|
||||
void EditSettings( const wchar_t *title, bool bModal, int tab, const wchar_t *appId = nullptr );
|
||||
void CloseSettings( void );
|
||||
void SetSettingsDirty( void );
|
||||
void SelectSettingsTab( int tab, bool bAdvanced, const CSetting *pSelect );
|
||||
void UpdateSettings( void ); // implemented by the user
|
||||
void UpgradeSettings( bool bShared ); // implemented by the user (called when converting 3.0 settings to 4.0)
|
||||
void ClosingSettings( HWND hWnd, int flags, int command ); // implemented by the user
|
||||
const wchar_t *GetDocRelativePath( void ); // implemented by the user
|
||||
void SettingChangedCallback( const CSetting *pSetting ); // implemented by the user
|
||||
bool IsSettingsMessage( MSG *msg );
|
||||
bool ImportSettingsXml( const wchar_t *fname );
|
||||
|
||||
@@ -2701,7 +2701,7 @@ LRESULT CTreeSettingsDlg::OnBrowse( WORD wNotifyCode, WORD wID, HWND hWndCtl, BO
|
||||
else if (_wcsicmp(token,L"bold_italic")==0)
|
||||
font.lfWeight=FW_BOLD, font.lfItalic=1;
|
||||
str=GetToken(str,token,_countof(token),L", \t");
|
||||
font.lfHeight=-(_wtol(token)*dpi+36)/72;
|
||||
font.lfHeight=-MulDiv(_wtol(token),dpi,72);
|
||||
|
||||
CHOOSEFONT choose={sizeof(choose),m_hWnd,NULL,&font};
|
||||
choose.Flags=CF_NOSCRIPTSEL;
|
||||
|
||||
24596
Src/Lib/json.hpp
4
Src/Lib/packages.config
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="nlohmann.json" version="3.11.2" targetFramework="native" />
|
||||
</packages>
|
||||
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x409 English (United States)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
|
||||
@@ -6,7 +6,7 @@ Default Font=
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x404 中文 (繁體,台灣)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
|
||||
143
Src/Localization/English/ButtonTutorial.html
Normal file
@@ -0,0 +1,143 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html><head>
|
||||
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
|
||||
<title>Custom Start Buttons</title>
|
||||
<style type="text/css">
|
||||
h1 {
|
||||
color: #0078d4;
|
||||
font-family: "Segoe UI",Tahoma,sans-serif;
|
||||
font-weight: 600;
|
||||
}
|
||||
h2 {
|
||||
color: #005a9e;
|
||||
font-family: "Segoe UI",Tahoma,sans-serif;
|
||||
font-weight: 600;
|
||||
}
|
||||
h3 {
|
||||
color: #005a9e;
|
||||
font-weight: 600;
|
||||
}
|
||||
body {
|
||||
font-family: "Segoe UI",Tahoma,sans-serif;
|
||||
}
|
||||
</style></head>
|
||||
<body>
|
||||
<h1>Custom Start Buttons Tutorial</h1>
|
||||
<br>
|
||||
<h2>Simple Start Buttons</h2>
|
||||
A custom start button requires an image that contains 3 distinct parts – one for the normal state of the button, one for the hot state (when the mouse is over the button), and one for the pressed state. The 3 parts must be the same size.
|
||||
<br>
|
||||
<br>
|
||||
<img src="images/button0.png">
|
||||
<br>
|
||||
<br>
|
||||
By default the width of the start button equals the width of the image. The height of the button is the height of the image divided by 3. You can scale the image by overriding the width of the button from the Open-Shell settings. The height will be adjusted to preserve the aspect ratio.
|
||||
<br>
|
||||
<br>
|
||||
The image must be saved in either PNG or BMP format (including 32-bit BMP files). For best results use an image editor that supports transparency, like Photoshop, Gimp or Paint .NET.
|
||||
<br>
|
||||
<br>
|
||||
<h3>Where to download</h3>
|
||||
You can find many start button images on the Internet. Here are some of the places:
|
||||
<br>
|
||||
<a href="http://www.classicshell.net/forum/viewforum.php?f=18">http://www.classicshell.net/forum/viewforum.php?f=18</a>
|
||||
<br>
|
||||
<a href="https://www.sevenforums.com/themes-styles/34951-custom-start-menu-button-collection.html">https://www.sevenforums.com/themes-styles/34951-custom-start-menu-button-collection.html</a>
|
||||
<br>
|
||||
<a href="https://www.sevenforums.com/customization/78291-big-group-custom-start-orbs.html">https://www.sevenforums.com/customization/78291-big-group-custom-start-orbs.html</a>
|
||||
<br>
|
||||
<a href="https://tutoriales13.deviantart.com/art/Orbs-153450418">https://tutoriales13.deviantart.com/art/Orbs-153450418</a>
|
||||
<br>
|
||||
<a href="https://www.deviantart.com/?q=start+button+orb">https://www.deviantart.com/?q=start+button+orb</a>
|
||||
<br>
|
||||
<br>
|
||||
<h2>Animated Buttons</h2>
|
||||
Open-Shell does support animated start buttons. They contain animated transitions between the different states.
|
||||
<br>
|
||||
<br>
|
||||
The animated image consists of one or more rows of pixels that describe the animation, followed by one or more button frames. The description rows need to be fully opaque (A=255). The frames are counted from 0 – frame0, frame1, .... All frames must be the same size.
|
||||
<br>
|
||||
<br>
|
||||
<img src="images/button1.png">
|
||||
<br>
|
||||
<br>
|
||||
<h3>Main information (stored in the first 6 pixels)</h3>
|
||||
The first two pixels of the first row need to be:
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 0:</span> color R=65, G=78, B=77 (This is the text ANM in ASCII)
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 1:</span> color R=66, G=84, B=78 (This is the text BTN in ASCII)
|
||||
<br>
|
||||
They allow the start button to recognize that this image contains animation.
|
||||
<br>
|
||||
<br>
|
||||
The next pixel describes the number of frames and the number of description rows:
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 2:</span> The red channel contains the number of description rows (usually 1). The blue channel contains the number of total frames in the bitmap (this limits the number of frames to 255).
|
||||
<br>
|
||||
If one row is not enough to describe the animations, it can continue on two or more rows.
|
||||
<br>
|
||||
The contents of this pixel and the total size of the image determine the size of the individual frame. The number of description rows (red channel) is subtracted by the total height of the image, and then it is divided by the number of frames (blue channel).
|
||||
<br>
|
||||
<br>
|
||||
The next 3 pixels contain the frames for the 3 distinct states of the start button – Normal, Hot and Pressed.
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 3:</span> The blue channel contains the index of the frame for the Normal state (usually 0)
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 4:</span> The blue channel contains the index of the frame for the Hot state
|
||||
<br>
|
||||
<span style="font-weight: bold;"> Pixel 5:</span> The blue channel contains the index of the frame for the Pressed state
|
||||
<br>
|
||||
<br>
|
||||
<img src="images/button2.png">
|
||||
<br>
|
||||
<br>
|
||||
<h3>Transitions</h3>
|
||||
The rest of the pixels describe the transitions between the different states, in this order:
|
||||
<br>
|
||||
<ol>
|
||||
<li>Normal to Hot</li>
|
||||
<li>Hot to Normal</li>
|
||||
<li>Normal to Pressed</li>
|
||||
<li>Pressed to Normal</li>
|
||||
<li>Hot to Pressed</li>
|
||||
<li>Pressed to Hot</li>
|
||||
</ol>
|
||||
The blue channel of the first pixel of each transition contains the duration of the animation in 1/60th of a second (so 60 means 1 second). If this is 0, then there is no transition.
|
||||
<br>
|
||||
The green channel contains the number of frame ranges that follow. If this is 0, then the transition is a direct transition from the start state to the end state.
|
||||
<br>
|
||||
The red channel is 1 for the default behavior to cross-blend between frames and 0 to disable blending.
|
||||
<br>
|
||||
<br>
|
||||
The next few pixels contain pairs or frame ranges that make up the animation between the states. Their count is in the green channel of the first pixel of the transition. The first frame in the range is in the blue channel and the last frame is in the red channel. If the first and last frame of the range are different, then both frames and all frames between them are included.
|
||||
<br>
|
||||
<br>
|
||||
If the first and the last frame are the same, then the range identifies a single frame. This allows for precise selection of each frame of the animation.
|
||||
<br>
|
||||
<br>
|
||||
<img src="images/button3.png">
|
||||
<br>
|
||||
<br>
|
||||
In this example the Normal to Hot animation contains frames from 0 to 10. They play for 0.3 seconds and allow blending between frames. The Hot to Normal animation is the same but in reverse – it plays from frame 10 to frame 0.
|
||||
<br>
|
||||
The other 4 transitions are empty.
|
||||
<br>
|
||||
<br>
|
||||
<h2>Open-Shell Limitations</h2>
|
||||
While the format is very flexible and allows for custom animations between all states, Open-Shell does not support all features.
|
||||
<br>
|
||||
<ol>
|
||||
<li>It only supports animations between the Normal and Hot states. Any transitions involving the Pressed state are instant to improve responsiveness
|
||||
<br>
|
||||
<br>
|
||||
</li>
|
||||
<li>The animations between Normal and Hot must use the same (or similar) frames in both directions. Potentially the two transitions can play at different speed. The reason is that at any point during the animation it can be interrupted and the opposite animation will start from the current frame. This can happen when the mouse moves in and out of the start button
|
||||
<br>
|
||||
</li>
|
||||
</ol>
|
||||
<br>
|
||||
The system also allows you to create a button with a single image. Just set pixels from 3 to 11 to 0. Then frame 0 will be used for all states.
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
||||
@@ -190,3 +190,4 @@ StartHoverDelay.nameOverride = Hover delay (for Start button)
|
||||
AllProgramsDelay.nameOverride = Hover delay (for All Programs in Windows 7)
|
||||
CSMHotkey.tipAddition = .\n\nThe base value is the main key's virtual code. Add 256 for Shift, 512 for Control and 1024 for Alt.\nThe best way to get the value is to select the hotkey in the Open-Shell Menu settings dialog and then look up the value named CSMHotkey in HKCU\Software\OpenShell\StartMenu\Settings
|
||||
WSMHotkey.tipAddition = .\n\nThe base value is the main key's virtual code. Add 256 for Shift, 512 for Control and 1024 for Alt.\nThe best way to get the value is to select the hotkey in the Open-Shell Menu settings dialog and then look up the value named WSMHotkey in HKCU\Software\OpenShell\StartMenu\Settings
|
||||
SearchFiles.tipOverride = When this is checked, the search results will include files, emails and other items from indexed locations
|
||||
|
||||
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x409 English (United States)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -13,4 +13,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -40,7 +40,14 @@
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="More About Skins">
|
||||
<param name="Local" value="StartMenu.html#skins">
|
||||
<param name="ImageNumber" value="1">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Start Menu Skinning Tutorial">
|
||||
<param name="Local" value="SkinTutorial.html#skin_tutorial">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Search">
|
||||
<param name="Local" value="StartMenu.html#search">
|
||||
@@ -48,7 +55,14 @@
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Custom Start Button">
|
||||
<param name="Local" value="StartMenu.html#button">
|
||||
<param name="ImageNumber" value="1">
|
||||
</OBJECT>
|
||||
<UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Custom Start Buttons Tutorial">
|
||||
<param name="Local" value="ButtonTutorial.html#button_tutorial">
|
||||
</OBJECT>
|
||||
</UL>
|
||||
<LI> <OBJECT type="text/sitemap">
|
||||
<param name="Name" value="Localization">
|
||||
<param name="Local" value="StartMenu.html#localization">
|
||||
|
||||
2204
Src/Localization/English/SkinTutorial.html
Normal file
@@ -263,7 +263,7 @@ selected.<br>
|
||||
You can create your own skin. You will need an image editor that
|
||||
supports alpha channel (like Gimp or Photoshop) and a tool to edit
|
||||
resource files (like Resource Hacker or Visual Studio). And of course
|
||||
some talent for graphical design :). Read the <a target="_blank" href="http://www.classicshell.net/tutorials/skintutorial.html">Skinning Tutorial</a> before you begin.<br>
|
||||
some talent for graphical design :). Read the <a href="SkinTutorial.html">Skinning Tutorial</a> before you begin.<br>
|
||||
<br>
|
||||
<br><br>
|
||||
<h1><a name="search"></a>Search</h1><img src="images/search1.png" style="width: 302px;" alt=""><br>
|
||||
@@ -310,7 +310,7 @@ contain the 3 states of the button - normal, hot and pressed:<br>
|
||||
The image must be a 32-bit PNG or BMP. By default the width of the
|
||||
image determines the size of the button. You can override that by
|
||||
entering a custom width.<br>
|
||||
Read the <a href="http://www.classicshell.net/tutorials/buttontutorial.html">Button Tutorial</a> for more information about creating custom buttons.<br>
|
||||
Read the <a href="ButtonTutorial.html">Button Tutorial</a> for more information about creating custom buttons.<br>
|
||||
You can find many custom Start button images online. Here are few examples:<br>
|
||||
<a href="http://www.classicshell.net/forum/viewforum.php?f=18">http://www.classicshell.net/forum/viewforum.php?f=18</a><br>
|
||||
<a target="_blank" href="http://www.sevenforums.com/themes-styles/34951-custom-start-menu-button-collection.html">http://www.sevenforums.com/themes-styles/34951-custom-start-menu-button-collection.html<br>
|
||||
|
||||
BIN
Src/Localization/English/images/button0.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
Src/Localization/English/images/button1.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
BIN
Src/Localization/English/images/button2.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
Src/Localization/English/images/button3.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
Src/Localization/English/images/color_mask.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
BIN
Src/Localization/English/images/error_balloon.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
Src/Localization/English/images/main_slices.png
Normal file
|
After Width: | Height: | Size: 5.2 KiB |
BIN
Src/Localization/English/images/menu_arrows.png
Normal file
|
After Width: | Height: | Size: 887 B |
BIN
Src/Localization/English/images/padding.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
Src/Localization/English/images/pager_arrows.png
Normal file
|
After Width: | Height: | Size: 683 B |
BIN
Src/Localization/English/images/pager_buttons.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
Src/Localization/English/images/pattern_mask.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
Src/Localization/English/images/photoshop.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
Src/Localization/English/images/reshacker.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
Src/Localization/English/images/resize.png
Normal file
|
After Width: | Height: | Size: 964 B |
BIN
Src/Localization/English/images/search_icons.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
Src/Localization/English/images/separator.png
Normal file
|
After Width: | Height: | Size: 9.2 KiB |
BIN
Src/Localization/English/images/slices.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x40C French (France)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -13,4 +13,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x409 English (United States)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -13,4 +13,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x415 Polish (Poland)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -13,4 +13,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Contents file=OpenShellTOC.hhc
|
||||
Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Language=0x419 Russian (Russia)
|
||||
|
||||
Title=Ñïðàâêà Open-Shell
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -13,4 +13,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Default topic=Main.html
|
||||
Display compile progress=Yes
|
||||
Full-text search=Yes
|
||||
Language=0xc0a Español (España, internacional)
|
||||
|
||||
Title=Open-Shell Help
|
||||
|
||||
[FILES]
|
||||
ClassicExplorer.html
|
||||
@@ -14,4 +14,3 @@ StartMenu.html
|
||||
ClassicIE.html
|
||||
|
||||
[INFOTYPES]
|
||||
|
||||
|
||||
@@ -7,12 +7,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Skins", "Skins", "{409484D8
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Setup", "Setup", "{B695E1F6-785D-45CB-BCE0-0E9635DFC1DE}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ClassicExplorer", "ClassicExplorer\ClassicExplorer.vcxproj", "{9AF324B7-F786-4D85-B2E1-6E51720F874E}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StartMenu", "StartMenu\StartMenu.vcxproj", "{87D5FE20-AF86-458A-9AA3-3131EB06179B}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StartMenuDLL", "StartMenu\StartMenuDLL\StartMenuDLL.vcxproj", "{85DEECBB-1F9B-4983-9D54-3BF42182B7E7}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ClassicExplorer", "ClassicExplorer\ClassicExplorer.vcxproj", "{9AF324B7-F786-4D85-B2E1-6E51720F874E}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Setup", "Setup\Setup.vcxproj", "{A4A4D3B1-24E7-401E-A37C-72141D7603DC}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Win7Aero", "Skins\Win7Aero\Win7Aero.vcxproj", "{EA65FDDD-CB77-417F-8BB4-2F3ECB5B3E75}"
|
||||
@@ -54,8 +54,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Win8", "Skins\Win8\Win8.vcx
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StartMenuHelper", "StartMenu\StartMenuHelper\StartMenuHelper.vcxproj", "{A42C6159-ACA8-46D1-A0FB-19C398B137D5}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UpdateBin", "Setup\UpdateBin\UpdateBin.vcxproj", "{F92A5473-F9E0-412F-923C-6632A66D13C1}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Utility", "Setup\Utility\Utility.vcxproj", "{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Midnight7", "Skins\Midnight7\Midnight7.vcxproj", "{7BD26CB3-5280-48FD-9A86-C13E321018D5}"
|
||||
@@ -68,6 +66,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Metallic7", "Skins\Metallic
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DesktopToasts", "Update\DesktopToasts\DesktopToasts.vcxproj", "{D94BD2A6-1872-4F01-B911-F406603AA2E1}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Immersive", "Skins\Immersive\Immersive.vcxproj", "{BD28B058-230E-42DF-9FB1-FFBB0153F498}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Immersive7", "Skins\Immersive7\Immersive7.vcxproj", "{75809D15-8403-420A-BBE6-05F478D88D8E}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
@@ -78,18 +80,6 @@ Global
|
||||
Setup|x64 = Setup|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{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|x64.ActiveCfg = Debug|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.Build.0 = Debug|x64
|
||||
{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|x64.ActiveCfg = Release|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.Build.0 = Release|x64
|
||||
{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|x64.ActiveCfg = Setup|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.Build.0 = Setup|x64
|
||||
{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|x64.ActiveCfg = Debug|x64
|
||||
@@ -114,6 +104,18 @@ Global
|
||||
{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.Build.0 = Setup|x64
|
||||
{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|x64.ActiveCfg = Debug|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Debug|x64.Build.0 = Debug|x64
|
||||
{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|x64.ActiveCfg = Release|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Release|x64.Build.0 = Release|x64
|
||||
{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|x64.ActiveCfg = Setup|x64
|
||||
{9AF324B7-F786-4D85-B2E1-6E51720F874E}.Setup|x64.Build.0 = Setup|x64
|
||||
{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|x64.ActiveCfg = Debug|Win32
|
||||
@@ -316,13 +318,6 @@ Global
|
||||
{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.Build.0 = Setup|x64
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Debug|Win32.ActiveCfg = update_4.3.1|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Debug|x64.ActiveCfg = update_4.2.7|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Release|Win32.ActiveCfg = update_4.2.7|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Release|Win32.Build.0 = update_4.2.7|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Release|x64.ActiveCfg = update_4.2.7|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Setup|Win32.ActiveCfg = update_4.2.7|Win32
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1}.Setup|x64.ActiveCfg = update_4.3.0|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|x64.ActiveCfg = Debug|x64
|
||||
@@ -388,6 +383,30 @@ Global
|
||||
{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|x64.ActiveCfg = Release|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|x64.ActiveCfg = Resource|Win32
|
||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Debug|x64.Build.0 = 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|x64.ActiveCfg = Resource|Win32
|
||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Release|x64.Build.0 = 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|x64.ActiveCfg = Resource|Win32
|
||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498}.Setup|x64.Build.0 = 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|x64.ActiveCfg = Resource|Win32
|
||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Debug|x64.Build.0 = 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|x64.ActiveCfg = Resource|Win32
|
||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Release|x64.Build.0 = 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|x64.ActiveCfg = Resource|Win32
|
||||
{75809D15-8403-420A-BBE6-05F478D88D8E}.Setup|x64.Build.0 = Resource|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -406,12 +425,13 @@ Global
|
||||
{31C016FB-9EA1-4AF5-987A-37210C04DA06} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{5C875214-0E3A-4CF0-BC0C-BFF6FAA4C089} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{ED74EBA9-1BCB-4B8F-9AE1-DC63B3C24A94} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{F92A5473-F9E0-412F-923C-6632A66D13C1} = {B695E1F6-785D-45CB-BCE0-0E9635DFC1DE}
|
||||
{DAE66C9B-05DC-4ACE-97DA-2547B490BBFF} = {B695E1F6-785D-45CB-BCE0-0E9635DFC1DE}
|
||||
{7BD26CB3-5280-48FD-9A86-C13E321018D5} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{598AB4AC-008E-4501-90B3-C5213834C1DA} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{63BAF573-170B-4FA0-AEE3-16E04F3E9DF5} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{CA5BFC96-428D-42F5-9F7D-CDDE048A357C} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{BD28B058-230E-42DF-9FB1-FFBB0153F498} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
{75809D15-8403-420A-BBE6-05F478D88D8E} = {409484D8-C0DB-4991-AF03-124128EDEF98}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {AF7D0AE8-B556-4840-92EF-CEADC95A5CD1}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
REM ***** Collect PDBs
|
||||
|
||||
echo -- Creating symbols package
|
||||
set CS_SYMBOLS_NAME=OpenShellPDB_%CS_VERSION_STR%.7z
|
||||
set CS_SYMBOLS_NAME=OpenShellSymbols_%CS_VERSION_STR%.7z
|
||||
|
||||
7z a -mx9 .\Final\%CS_SYMBOLS_NAME% .\Output\symbols\* > nul
|
||||
|
||||
@@ -20,4 +20,8 @@ cd ..
|
||||
|
||||
cd Setup
|
||||
|
||||
if defined APPVEYOR (
|
||||
appveyor PushArtifact ..\..\build\bin\Release\Utility.exe
|
||||
)
|
||||
|
||||
exit /b 0
|
||||
|
||||
@@ -6,6 +6,9 @@ echo -- Compiling
|
||||
|
||||
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.Component.MSBuild -property installationPath`) do set MSBuildDir=%%i\MSBuild\Current\Bin\
|
||||
|
||||
REM Restore NuGet packages
|
||||
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Restore -p:RestorePackagesConfig=true /verbosity:quiet /nologo
|
||||
|
||||
REM ********* Build 64-bit solution
|
||||
echo --- 64bit
|
||||
"%MSBuildDir%MSBuild.exe" ..\OpenShell.sln /m /t:Rebuild /p:Configuration="Setup" /p:Platform="x64" /verbosity:quiet /nologo
|
||||
@@ -19,11 +22,11 @@ echo --- 32bit
|
||||
|
||||
REM ********* Make en-US.dll
|
||||
cd ..
|
||||
Setup\Utility\Release\Utility.exe makeEN ClassicExplorer\Setup\ClassicExplorer32.dll StartMenu\Setup\StartMenuDLL.dll ClassicIE\Setup\ClassicIEDLL_32.dll Update\Release\Update.exe
|
||||
..\build\bin\Release\Utility.exe makeEN ..\build\bin\Setup\ClassicExplorer32.dll ..\build\bin\Setup\StartMenuDLL.dll ..\build\bin\Setup\ClassicIEDLL_32.dll ..\build\bin\Release\Update.exe
|
||||
@if ERRORLEVEL 1 exit /b 1
|
||||
|
||||
Setup\Utility\Release\Utility.exe extract en-US.dll en-US.csv
|
||||
copy /B en-US.dll Localization\English > nul
|
||||
..\build\bin\Release\Utility.exe extract en-US.dll en-US.csv
|
||||
move en-US.dll Localization\English > nul
|
||||
move en-US.csv Localization\English > nul
|
||||
|
||||
cd Setup
|
||||
@@ -31,38 +34,40 @@ cd Setup
|
||||
|
||||
REM ********* Copy binaries
|
||||
|
||||
copy /B ..\ClassicExplorer\Setup\ClassicExplorer32.dll Output > nul
|
||||
copy /B ..\ClassicExplorer\Setup\ClassicExplorerSettings.exe Output > nul
|
||||
copy /B ..\ClassicIE\Setup\ClassicIEDLL_32.dll Output > nul
|
||||
copy /B ..\ClassicIE\Setup\ClassicIE_32.exe Output > nul
|
||||
copy /B ..\StartMenu\Setup\StartMenu.exe Output > nul
|
||||
copy /B ..\StartMenu\Setup\StartMenuDLL.dll Output > nul
|
||||
copy /B ..\Update\Release\Update.exe Output > nul
|
||||
copy /B ..\Update\DesktopToasts\Release\DesktopToasts.dll Output > nul
|
||||
copy /B ..\StartMenu\StartMenuHelper\Setup\StartMenuHelper32.dll Output > nul
|
||||
copy /B ..\Setup\SetupHelper\Release\SetupHelper.exe Output > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicExplorer32.dll Output > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicExplorerSettings.exe Output > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicIEDLL_32.dll Output > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicIE_32.exe Output > nul
|
||||
copy /B ..\..\build\bin\Setup\StartMenu.exe Output > nul
|
||||
copy /B ..\..\build\bin\Setup\StartMenuDLL.dll Output > nul
|
||||
copy /B ..\..\build\bin\Setup\StartMenuHelper32.dll Output > nul
|
||||
copy /B ..\..\build\bin\Release\Update.exe Output > nul
|
||||
copy /B ..\..\build\bin\Release\DesktopToasts.dll Output > nul
|
||||
copy /B ..\..\build\bin\Release\SetupHelper.exe Output > nul
|
||||
|
||||
copy /B ..\ClassicExplorer\Setup64\ClassicExplorer64.dll Output\x64 > nul
|
||||
copy /B ..\ClassicIE\Setup64\ClassicIEDLL_64.dll Output\x64 > nul
|
||||
copy /B ..\ClassicIE\Setup64\ClassicIE_64.exe Output\x64 > nul
|
||||
copy /B ..\StartMenu\Setup64\StartMenu.exe Output\x64 > nul
|
||||
copy /B ..\StartMenu\Setup64\StartMenuDLL.dll Output\x64 > nul
|
||||
copy /B ..\StartMenu\StartMenuHelper\Setup64\StartMenuHelper64.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\ClassicIE_64.exe Output\x64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\StartMenu.exe Output\x64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\StartMenuDLL.dll Output\x64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\StartMenuHelper64.dll Output\x64 > nul
|
||||
|
||||
copy /B "..\StartMenu\Skins\Classic Skin.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Full Glass.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Smoked Glass.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows Aero.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows Basic.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows XP Luna.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows 8.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Metro.skin" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Classic Skin.skin7" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows Aero.skin7" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Windows 8.skin7" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Midnight.skin7" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Metro.skin7" Output > nul
|
||||
copy /B "..\StartMenu\Skins\Metallic.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Classic Skin.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Full Glass.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Smoked Glass.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows Aero.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows Basic.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows XP Luna.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows 8.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Metro.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Classic Skin.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows Aero.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Windows 8.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Midnight.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Metro.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Metallic.skin7" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Immersive.skin" Output > nul
|
||||
copy /B "..\..\build\bin\Skins\Immersive.skin7" Output > nul
|
||||
|
||||
|
||||
REM ********* Collect debug info
|
||||
@@ -70,45 +75,45 @@ md Output\PDB32
|
||||
md Output\PDB64
|
||||
|
||||
REM Explorer 32
|
||||
copy /B ..\ClassicExplorer\Setup\ClassicExplorer32.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicExplorer32.pdb Output\PDB32 > nul
|
||||
copy /B Output\ClassicExplorer32.dll Output\PDB32 > nul
|
||||
copy /B ..\ClassicExplorer\Setup\ClassicExplorerSettings.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicExplorerSettings.pdb Output\PDB32 > nul
|
||||
copy /B Output\ClassicExplorerSettings.exe Output\PDB32 > nul
|
||||
|
||||
REM Explorer 64
|
||||
copy /B ..\ClassicExplorer\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
|
||||
|
||||
REM IE 32
|
||||
copy /B ..\ClassicIE\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 ..\ClassicIE\Setup\ClassicIE_32.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Setup\ClassicIE_32.pdb Output\PDB32 > nul
|
||||
copy /B Output\ClassicIE_32.exe Output\PDB32 > nul
|
||||
|
||||
REM IE 64
|
||||
copy /B ..\ClassicIE\Setup64\ClassicIEDLL_64.pdb Output\PDB64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\ClassicIEDLL_64.pdb Output\PDB64 > nul
|
||||
copy /B Output\x64\ClassicIEDLL_64.dll Output\PDB64 > nul
|
||||
copy /B ..\ClassicIE\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
|
||||
|
||||
REM Menu 32
|
||||
copy /B ..\StartMenu\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 ..\StartMenu\Setup\StartMenuDLL.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Setup\StartMenuDLL.pdb Output\PDB32 > nul
|
||||
copy /B Output\StartMenuDLL.dll Output\PDB32 > nul
|
||||
copy /B ..\StartMenu\StartMenuHelper\Setup\StartMenuHelper32.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Setup\StartMenuHelper32.pdb Output\PDB32 > nul
|
||||
copy /B Output\StartMenuHelper32.dll Output\PDB32 > nul
|
||||
copy /B ..\Update\Release\Update.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Release\Update.pdb Output\PDB32 > nul
|
||||
copy /B Output\Update.exe Output\PDB32 > nul
|
||||
copy /B ..\Update\DesktopToasts\Release\DesktopToasts.pdb Output\PDB32 > nul
|
||||
copy /B ..\..\build\bin\Release\DesktopToasts.pdb Output\PDB32 > nul
|
||||
copy /B Output\DesktopToasts.dll Output\PDB32 > nul
|
||||
|
||||
REM Menu 64
|
||||
copy /B ..\StartMenu\Setup64\StartMenu.pdb Output\PDB64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\StartMenu.pdb Output\PDB64 > nul
|
||||
copy /B Output\x64\StartMenu.exe Output\PDB64 > nul
|
||||
copy /B ..\StartMenu\Setup64\StartMenuDLL.pdb Output\PDB64 > nul
|
||||
copy /B ..\..\build\bin\Setup64\StartMenuDLL.pdb Output\PDB64 > nul
|
||||
copy /B Output\x64\StartMenuDLL.dll Output\PDB64 > nul
|
||||
copy /B ..\StartMenu\StartMenuHelper\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
|
||||
|
||||
|
||||
@@ -155,11 +160,11 @@ if exist Output\PolicyDefinitions.zip (
|
||||
del Output\PolicyDefinitions.zip
|
||||
)
|
||||
cd ..\Localization\English
|
||||
..\..\StartMenu\Setup\StartMenu.exe -saveadmx en-US
|
||||
..\..\..\build\bin\Setup\StartMenu.exe -saveadmx en-US
|
||||
@if ERRORLEVEL 1 exit /b 1
|
||||
..\..\ClassicExplorer\Setup\ClassicExplorerSettings.exe -saveadmx en-US
|
||||
..\..\..\build\bin\Setup\ClassicExplorerSettings.exe -saveadmx en-US
|
||||
@if ERRORLEVEL 1 exit /b 1
|
||||
..\..\ClassicIE\Setup\ClassicIE_32.exe -saveadmx en-US
|
||||
..\..\..\build\bin\Setup\ClassicIE_32.exe -saveadmx en-US
|
||||
@if ERRORLEVEL 1 exit /b 1
|
||||
md en-US
|
||||
copy /B *.adml en-US > nul
|
||||
|
||||
@@ -60,7 +60,7 @@ light Temp\Setup64.wixobj -nologo -out Temp\Setup64.msi -ext WixUIExtension -ext
|
||||
|
||||
REM ********* Build MSI Checksums
|
||||
echo --- MSI Checksums
|
||||
Utility\Release\Utility.exe crcmsi Temp
|
||||
..\..\build\bin\Release\Utility.exe crcmsi Temp
|
||||
@if ERRORLEVEL 1 exit /b 1
|
||||
|
||||
REM ********* Build bootstrapper
|
||||
@@ -73,10 +73,10 @@ for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio
|
||||
if exist Final rd /Q /S Final
|
||||
md Final
|
||||
|
||||
copy /B Release\Setup.exe Final\%CS_INSTALLER_NAME%.exe > nul
|
||||
copy /B ..\..\build\bin\Release\Setup.exe Final\%CS_INSTALLER_NAME%.exe > nul
|
||||
|
||||
if defined APPVEYOR (
|
||||
appveyor PushArtifact Release\Setup.exe -FileName %CS_INSTALLER_NAME%.exe
|
||||
appveyor PushArtifact Final\%CS_INSTALLER_NAME%.exe
|
||||
)
|
||||
|
||||
SET CS_LANG_FOLDER=
|
||||
|
||||
|
Before Width: | Height: | Size: 401 KiB After Width: | Height: | Size: 66 KiB |
@@ -222,7 +222,7 @@ int APIENTRY wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
|
||||
bool bQuiet=false;
|
||||
for (;count>0;count--,params++)
|
||||
{
|
||||
if (_wcsicmp(params[0],L"help")==0 || _wcsicmp(params[0],L"/?")==0)
|
||||
if (_wcsicmp(params[0],L"help")==0 || _wcsicmp(params[0],L"/help")==0 || _wcsicmp(params[0],L"/h")==0 || _wcsicmp(params[0],L"/?")==0)
|
||||
{
|
||||
wchar_t strTitle[256];
|
||||
if (!LoadString(hInstance,IDS_APP_TITLE,strTitle,_countof(strTitle))) strTitle[0]=0;
|
||||
|
||||
@@ -17,85 +17,25 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\Version.props" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>comctl32.lib;Psapi.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<AdditionalIncludeDirectories>..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>comctl32.lib;Psapi.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -90,6 +90,8 @@
|
||||
<ComponentRef Id="Midnight.skin7" />
|
||||
<ComponentRef Id="Metro.skin7" />
|
||||
<ComponentRef Id="Metallic.skin7" />
|
||||
<ComponentRef Id="Immersive.skin" />
|
||||
<ComponentRef Id="Immersive.skin7" />
|
||||
<ComponentRef Id="AutoRun" />
|
||||
<ComponentRef Id="MenuSettingsLink" />
|
||||
</Feature>
|
||||
@@ -101,7 +103,6 @@
|
||||
<ComponentRef Id="ClassicIE_64.exe" />
|
||||
<?endif ?>
|
||||
<ComponentRef Id="IESettingsLink" />
|
||||
<Condition Level="1">IE_BUILD>=90000</Condition>
|
||||
</Feature>
|
||||
<Feature Id="Update" Level="1" Title="!(loc.UpdateTitle)" ConfigurableDirectory="APPLICATIONFOLDER" AllowAdvertise="no" Description="!(loc.UpdateDesc)">
|
||||
<ComponentRef Id="Update.exe" />
|
||||
@@ -535,6 +536,14 @@
|
||||
<Component Id="Metallic.skin7" Guid="2167BBCA-FD42-4285-AE00-9CDDDF436B30" Win64="$(var.CS_WIN64)">
|
||||
<File Id="Metallic.skin7" KeyPath="yes" Checksum="yes" Source="Output\Metallic.skin7" Vital="yes" />
|
||||
</Component>
|
||||
<Component Id="Immersive.skin" Guid="045C48C3-FE11-4C66-AD7F-3F3EE35B4DEA" Win64="$(var.CS_WIN64)">
|
||||
<File Id="Immersive.skin" KeyPath="yes" Checksum="yes" Source="Output\Immersive.skin" Vital="yes" />
|
||||
<Condition>WINDOWSBUILDNUM>10000</Condition>
|
||||
</Component>
|
||||
<Component Id="Immersive.skin7" Guid="FFECA17A-C005-4D84-9F7C-DBC8EA2E1B5A" Win64="$(var.CS_WIN64)">
|
||||
<File Id="Immersive.skin7" KeyPath="yes" Checksum="yes" Source="Output\Immersive.skin7" Vital="yes" />
|
||||
<Condition>WINDOWSBUILDNUM>10000</Condition>
|
||||
</Component>
|
||||
</DirectoryRef>
|
||||
<DirectoryRef Id="TARGETDIR">
|
||||
<Component Id="OpenShell" Guid="19EC9EFC-B901-4EAB-B800-6E98D2261077" Win64="$(var.CS_WIN64)">
|
||||
@@ -634,6 +643,9 @@
|
||||
<Property Id="APPLICATIONFOLDER">
|
||||
<RegistrySearch Id="Path" Root="HKLM" Key="Software\OpenShell\OpenShell" Name="Path" Type="raw" Win64="$(var.CS_WIN64)" />
|
||||
</Property>
|
||||
<Property Id="WINDOWSBUILDNUM" Secure="yes">
|
||||
<RegistrySearch Id="WindowsBuild" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion" Name="CurrentBuild" Type="raw" />
|
||||
</Property>
|
||||
<CustomAction Id="LaunchStartMenu" Impersonate="yes" ExeCommand="" FileKey="StartMenu.exe" Return="asyncNoWait" />
|
||||
<CustomAction Id="CloseStartMenu" Impersonate="yes" BinaryKey="SetupHelper.exe" Return="ignore" ExeCommand="exitSM" />
|
||||
<WixVariable Id="WixUIBannerBmp" Value="..\Setup\banner.jpg" />
|
||||
|
||||
@@ -17,77 +17,23 @@
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)'!='Debug'">true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\..\Common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<AdditionalIncludeDirectories>..\..\Lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<TreatWarningAsError>true</TreatWarningAsError>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="SetupHelper.cpp" />
|
||||
|
||||
|
Before Width: | Height: | Size: 848 B |
@@ -1,506 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="update_4.1.0|Win32">
|
||||
<Configuration>update_4.1.0</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.0|Win32">
|
||||
<Configuration>update_4.2.0</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.1|Win32">
|
||||
<Configuration>update_4.2.1</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.2|Win32">
|
||||
<Configuration>update_4.2.2</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.3|Win32">
|
||||
<Configuration>update_4.2.3</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.4|Win32">
|
||||
<Configuration>update_4.2.4</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.5|Win32">
|
||||
<Configuration>update_4.2.5</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.6|Win32">
|
||||
<Configuration>update_4.2.6</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.2.7|Win32">
|
||||
<Configuration>update_4.2.7</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.3.0|Win32">
|
||||
<Configuration>update_4.3.0</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="update_4.3.1|Win32">
|
||||
<Configuration>update_4.3.1</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{F92A5473-F9E0-412F-923C-6632A66D13C1}</ProjectGuid>
|
||||
<RootNamespace>UpdateBin</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.1|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.0|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.7|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.6|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.5|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.4|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.3|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.2|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.1|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.0|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.1.0|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v143</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.1|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.0|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.7|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.6|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.5|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.4|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.3|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.2|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.1|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.0|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='update_4.1.0|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\..\Version.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.1.0|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.0|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.1|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.2|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.3|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.4|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.5|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.6|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.7|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.0|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.1|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
<IntDir>$(Configuration)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.1.0|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.0|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.1|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.2|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.3|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.4|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.5|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.6|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.2.7|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.0|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='update_4.3.1|Win32'">
|
||||
<PreBuildEvent>
|
||||
<Command>..\Utility\Debug\Utility.exe update .\$(Configuration).txt .\UpdateBin.rc</Command>
|
||||
</PreBuildEvent>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;UPDATEBIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeader />
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\Final\$(Configuration).ver</OutputFile>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<NoEntryPoint>true</NoEntryPoint>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="resource.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Text Include="update_4.1.0.txt" />
|
||||
<Text Include="update_4.2.0.txt" />
|
||||
<Text Include="update_4.2.1.txt" />
|
||||
<Text Include="update_4.2.2.txt" />
|
||||
<Text Include="update_4.2.3.txt" />
|
||||
<Text Include="update_4.2.4.txt" />
|
||||
<Text Include="update_4.2.5.txt" />
|
||||
<Text Include="update_4.2.6.txt" />
|
||||
<Text Include="update_4.2.7.txt" />
|
||||
<Text Include="update_4.3.0.txt" />
|
||||
<Text Include="update_4.3.1.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="UpdateBin.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Utility\Utility.vcxproj">
|
||||
<Project>{dae66c9b-05dc-4ace-97da-2547b490bbff}</Project>
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -1,10 +0,0 @@
|
||||
#define IDS_VERSION 16
|
||||
#define IDS_NEWS 17
|
||||
#define IDS_INSTALL_URL 18
|
||||
#define IDS_INSTALL_SIGNER 19
|
||||
#define IDS_LNG_URL 20
|
||||
#define IDS_LNG_VERSION 21
|
||||
#define IDS_LNG_CRC 22
|
||||
#define IDS_UPDATE_LINK 23
|
||||
#define IDS_LANGUAGE_LINK 24
|
||||
#define IDS_ALT_URL 25
|
||||
@@ -53,6 +53,7 @@ static const wchar_t *g_InstalledFiles[]=
|
||||
L"ClassicIEDLL_64.dll",
|
||||
L"ClassicIE_32.exe",
|
||||
L"ClassicIE_64.exe",
|
||||
L"DesktopToasts.dll",
|
||||
L"OpenShell.chm",
|
||||
L"OpenShellReadme.rtf",
|
||||
L"Update.exe",
|
||||
@@ -82,6 +83,8 @@ static const wchar_t *g_InstalledSkins[]=
|
||||
L"Classic Skin.skin",
|
||||
L"Classic Skin.skin7",
|
||||
L"Full Glass.skin",
|
||||
L"Immersive.skin",
|
||||
L"Immersive.skin7",
|
||||
L"Metallic.skin7",
|
||||
L"Metro.skin",
|
||||
L"Metro.skin7",
|
||||
@@ -114,6 +117,7 @@ static const wchar_t *g_LocalFiles[]=
|
||||
L"ClassicIELog.txt",
|
||||
L"StartMenuLog.txt",
|
||||
L"DataCache.db",
|
||||
L"ModernSettings.dat",
|
||||
};
|
||||
|
||||
// files to delete from the ALLUSERSPROFILE folder
|
||||
@@ -330,7 +334,7 @@ LRESULT CResultsDlg::OnInitDialog( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL
|
||||
if (m_bErrors)
|
||||
{
|
||||
SetDlgItemText(IDC_STATICRESULT,L"The Open-Shell removal tool encountered some errors. Please, restart your computer and try again. If the problem is not resolved"
|
||||
L" seek help in the Open-Shell forums: www.classicshell.net/forum. Copy the following report and post it in the forum. The report is also saved in a file OpenShellReport.txt on your desktop.");
|
||||
L" seek help in the Open-Shell forums: https://github.com/Open-Shell/Open-Shell-Menu/discussions. Copy the following report and post it in the forum. The report is also saved in a file OpenShellReport.txt on your desktop.");
|
||||
}
|
||||
else if (m_bReboot)
|
||||
{
|
||||
@@ -643,7 +647,7 @@ static void DeleteRegValueSOFTWARE( const wchar_t *keyName, const wchar_t *value
|
||||
int error=RegOpenKeyEx(HKEY_LOCAL_MACHINE,keyName2,0,KEY_WRITE|DELETE|KEY_WOW64_64KEY,&hkey);
|
||||
if (error==ERROR_SUCCESS)
|
||||
{
|
||||
int error=RegDeleteValue2(hkey,keyName);
|
||||
int error=RegDeleteValue2(hkey,valueName);
|
||||
if (error!=ERROR_FILE_NOT_FOUND)
|
||||
{
|
||||
LogMessage(-1,L"Deleting registry value HKEY_LOCAL_MACHINE\\SOFTWARE\\%s:%s",keyName,valueName);
|
||||
@@ -666,7 +670,7 @@ static void DeleteRegValueSOFTWARE( const wchar_t *keyName, const wchar_t *value
|
||||
int error=RegOpenKeyEx(HKEY_LOCAL_MACHINE,keyName2,0,KEY_WRITE|DELETE|KEY_WOW64_32KEY,&hkey);
|
||||
if (error==ERROR_SUCCESS)
|
||||
{
|
||||
int error=RegDeleteValue2(hkey,keyName);
|
||||
int error=RegDeleteValue2(hkey,valueName);
|
||||
if (error!=ERROR_FILE_NOT_FOUND)
|
||||
{
|
||||
LogMessage(-1,L"Deleting registry value HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\%s:%s",keyName,valueName);
|
||||
@@ -979,6 +983,13 @@ static void ManualUninstallInternal( void )
|
||||
DeleteRegKeyHKCR(L"ClassicIE.ClassicIEBHO.1");
|
||||
DeleteRegKeyHKCR(L"StartMenuHelper.StartMenuExt");
|
||||
DeleteRegKeyHKCR(L"StartMenuHelper.StartMenuExt.1");
|
||||
DeleteRegKeyHKCR(L"TypeLib\\{BF8D124A-A4E0-402F-8152-4EF377E62586}");
|
||||
DeleteRegKeyHKCR(L"TypeLib\\{FDA50A1E-B8CE-49DE-8D17-B034A84AA280}");
|
||||
DeleteRegKeyHKCR(L"Interface\\{2576496C-B58A-4995-8878-8B68F9E8D1FC}");
|
||||
DeleteRegKeyHKCR(L"Interface\\{6E00B97F-A4D4-4062-98E4-4F66FC96F32F}");
|
||||
DeleteRegKeyHKCR(L"Interface\\{A1678625-A011-4B7C-A1FA-D691E4CDDB79}");
|
||||
DeleteRegKeyHKCR(L"Interface\\{BC4C1B8F-0BDE-4E42-9583-E072B2A28E0D}");
|
||||
DeleteRegKeyHKCR(L"Interface\\{C698A81E-5D02-42B1-9801-5381CA8BBC2F}");
|
||||
|
||||
DeleteRegKeyCLSID(L"{449D0D6E-2412-4E61-B68F-1CB625CD9E52}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{553891B7-A0D5-4526-BE18-D3CE461D6310}",bIsWow64);
|
||||
@@ -986,6 +997,10 @@ static void ManualUninstallInternal( void )
|
||||
DeleteRegKeyCLSID(L"{8C83ACB1-75C3-45D2-882C-EFA32333491C}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{D3214FBB-3CA1-406A-B3E8-3EB7C393A15E}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{E595F05F-903F-4318-8B0A-7F633B520D2B}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{82E749ED-B971-4550-BAF7-06AA2BF7E836}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{5AB14324-C087-42C1-B905-A0BFDB4E9532}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{E407B70A-1FBD-4D5E-8822-231C69102472}",bIsWow64);
|
||||
DeleteRegKeyCLSID(L"{EA801577-E6AD-4BD5-8F71-4BE0154331A4}",bIsWow64);
|
||||
|
||||
DeleteRegKeySOFTWARE(L"Microsoft\\Internet Explorer\\Extensions\\{56753E59-AF1D-4FBA-9E15-31557124ADA2}",bIsWow64);
|
||||
DeleteRegKeySOFTWARE(L"Microsoft\\Internet Explorer\\Low Rights\\ElevationPolicy\\{02E6771D-8375-42B9-9F83-B4730F697900}",bIsWow64);
|
||||
@@ -1001,6 +1016,7 @@ static void ManualUninstallInternal( void )
|
||||
DeleteRegValueSOFTWARE(L"Microsoft\\Windows\\CurrentVersion\\Policies\\Ext\\CLSID",L"{553891B7-A0D5-4526-BE18-D3CE461D6310}",bIsWow64);
|
||||
DeleteRegValueSOFTWARE(L"Microsoft\\Windows\\CurrentVersion\\Policies\\Ext\\CLSID",L"{EA801577-E6AD-4BD5-8F71-4BE0154331A4}",bIsWow64);
|
||||
DeleteRegValueSOFTWARE(L"Microsoft\\Windows\\CurrentVersion\\Run",L"Open-Shell Menu",bIsWow64);
|
||||
DeleteRegValueSOFTWARE(L"Microsoft\\Windows\\CurrentVersion\\Run",L"Open-Shell Start Menu",bIsWow64);
|
||||
|
||||
DeleteInstallerKey(HKEY_CLASSES_ROOT,L"HKEY_CLASSES_ROOT",L"Installer\\Features",L"OpenShell",L"");
|
||||
DeleteInstallerKey(HKEY_CLASSES_ROOT,L"HKEY_CLASSES_ROOT",L"Installer\\Products",L"ProductName",L"Open-Shell");
|
||||
|
||||
@@ -53,11 +53,6 @@ void UpdateSettings( void )
|
||||
{
|
||||
}
|
||||
|
||||
const wchar_t *GetDocRelativePath( void )
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
static const wchar_t *g_Tabs=L"\t\t\t\t\t\t\t\t\t\t";
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
#include "FNVHash.h"
|
||||
#include "SettingsParser.h"
|
||||
#include "resource.h"
|
||||
#include "..\UpdateBin\resource.h"
|
||||
#include "ResourceHelper.h"
|
||||
#include <commctrl.h>
|
||||
#include "SaveLogFile.h"
|
||||
@@ -412,256 +411,6 @@ qqq:
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
struct LanguageData
|
||||
{
|
||||
std::map<int,CString> strings;
|
||||
CString bitmap;
|
||||
};
|
||||
|
||||
int GenerateUpdateFile( wchar_t *const *params, int count )
|
||||
{
|
||||
if (count<3) return 3;
|
||||
|
||||
std::vector<unsigned char> buf;
|
||||
LoadFile(params[1],buf);
|
||||
if (buf.empty()) return 1;
|
||||
buf.push_back(0);
|
||||
buf.push_back(0);
|
||||
|
||||
wchar_t token[256];
|
||||
|
||||
std::map<int,LanguageData> languages;
|
||||
const int DEFAULT_LANGUAGE=0x409;
|
||||
|
||||
const wchar_t *str0=(wchar_t*)&buf[0];
|
||||
if (*str0==0xFEFF) str0++;
|
||||
const wchar_t *str;
|
||||
|
||||
// old (current) version
|
||||
str=wcsstr(str0,L"{OLD_VER}");
|
||||
if (!str) return 1;
|
||||
GetToken(str+9,token,_countof(token),L"\r\n");
|
||||
int v1, v2, v3;
|
||||
swscanf_s(token,L"%d.%d.%d",&v1,&v2,&v3);
|
||||
|
||||
// new version
|
||||
str=wcsstr(str0,L"{NEW_VER}");
|
||||
if (!str) return 1;
|
||||
GetToken(str+9,token,_countof(token),L"\r\n");
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_VERSION]=token;
|
||||
|
||||
// signer
|
||||
str=wcsstr(str0,L"{SIGNER}");
|
||||
if (!str) return 1;
|
||||
GetToken(str+8,token,_countof(token),L"\r\n");
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_INSTALL_SIGNER]=token;
|
||||
|
||||
// update
|
||||
str=wcsstr(str0,L"{UPDATE}");
|
||||
if (!str) return 1;
|
||||
GetToken(str+8,token,_countof(token),L"\r\n");
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_UPDATE_LINK]=token;
|
||||
|
||||
// languages
|
||||
str=wcsstr(str0,L"{LANGUAGES}");
|
||||
if (!str) return 1;
|
||||
GetToken(str+11,token,_countof(token),L"\r\n");
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_LANGUAGE_LINK]=token;
|
||||
|
||||
// language folder
|
||||
str=wcsstr(str0,L"{LANGFOLDER}");
|
||||
if (!str) return 1;
|
||||
wchar_t langFolder[_MAX_PATH];
|
||||
GetToken(str+12,langFolder,_countof(langFolder),L"\r\n");
|
||||
|
||||
// alt url
|
||||
str=wcsstr(str0,L"{ALT}");
|
||||
if (str)
|
||||
{
|
||||
GetToken(str+5,token,_countof(token),L"\r\n");
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_ALT_URL]=token;
|
||||
}
|
||||
|
||||
// news
|
||||
str=wcsstr(str0,L"{NEWS}");
|
||||
if (!str) return 1;
|
||||
languages[DEFAULT_LANGUAGE].strings[IDS_NEWS]=str+6;
|
||||
|
||||
// look for {INST:
|
||||
str=str0;
|
||||
bool res=true;
|
||||
while (1)
|
||||
{
|
||||
str=wcsstr(str,L"{INST: ");
|
||||
res=true;
|
||||
if (!str) break;
|
||||
res=false;
|
||||
str+=7;
|
||||
str=GetToken(str,token,_countof(token),L"}\r\n");
|
||||
int language;
|
||||
if (!GetLocaleInfoEx(token,LOCALE_ILANGUAGE|LOCALE_RETURN_NUMBER,(LPWSTR)&language,4))
|
||||
break;
|
||||
str=GetToken(str,token,_countof(token),L"\r\n");
|
||||
languages[language].strings[IDS_INSTALL_URL]=token;
|
||||
// languages[language].strings[IDS_VERSION]=...; // TODO: allow per-language version of the installer
|
||||
}
|
||||
|
||||
if (!res) return 1;
|
||||
|
||||
str=str0;
|
||||
while (1)
|
||||
{
|
||||
str=wcsstr(str,L"{LANG: ");
|
||||
res=true;
|
||||
if (!str) break;
|
||||
res=false;
|
||||
str+=7;
|
||||
str=GetToken(str,token,_countof(token),L"}\r\n");
|
||||
int len=Strlen(token);
|
||||
bool bBasic=(len>0 && token[len-1]=='*');
|
||||
if (bBasic) token[len-1]=0;
|
||||
int language;
|
||||
if (!GetLocaleInfoEx(token,LOCALE_ILANGUAGE|LOCALE_RETURN_NUMBER,(LPWSTR)&language,4))
|
||||
break;
|
||||
|
||||
wchar_t fname[_MAX_PATH];
|
||||
Sprintf(fname,_countof(fname),L"%s\\%s.dll",langFolder,token);
|
||||
/* if (GetFileAttributes(fname)==INVALID_FILE_ATTRIBUTES)
|
||||
{
|
||||
fname[0]=0;
|
||||
wchar_t find[_MAX_PATH];
|
||||
Sprintf(find,_countof(find),L"%s\\*.*",langFolder);
|
||||
WIN32_FIND_DATA data;
|
||||
HANDLE h=FindFirstFile(find,&data);
|
||||
while (h!=INVALID_HANDLE_VALUE)
|
||||
{
|
||||
if ((data.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) && data.cFileName[0]!='.')
|
||||
{
|
||||
Sprintf(fname,_countof(fname),L"%s\\%s\\%s.dll",langFolder,data.cFileName,token);
|
||||
if (GetFileAttributes(fname)!=INVALID_FILE_ATTRIBUTES)
|
||||
{
|
||||
FindClose(h);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!FindNextFile(h,&data))
|
||||
{
|
||||
FindClose(h);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
if (!fname[0]) break;
|
||||
|
||||
unsigned long hash=0;
|
||||
wchar_t version[100];
|
||||
|
||||
hash=CalcFileFNV(fname);
|
||||
if (!hash) break;
|
||||
|
||||
DWORD dllBuild;
|
||||
DWORD dllVer=GetFileVersion(fname,&dllBuild);
|
||||
if (!dllVer) break;
|
||||
if (dllVer>(DWORD)((v1<<24)|(v2<<16)|v3)) break;
|
||||
|
||||
Sprintf(version,_countof(version),L"%d.%d.%d.%d%s",dllVer>>24,(dllVer>>16)&255,dllVer&65535,dllBuild,bBasic?L"*":L"");
|
||||
|
||||
Sprintf(token,_countof(token),L"%08X",hash);
|
||||
languages[language].strings[IDS_LNG_CRC]=token;
|
||||
|
||||
languages[language].strings[IDS_LNG_VERSION]=version;
|
||||
str=GetToken(str,token,_countof(token),L"\r\n");
|
||||
languages[language].strings[IDS_LNG_URL]=token;
|
||||
}
|
||||
|
||||
if (!res) return 1;
|
||||
|
||||
// look for {FLAG:
|
||||
str=str0;
|
||||
while (1)
|
||||
{
|
||||
str=wcsstr(str,L"{FLAG: ");
|
||||
res=true;
|
||||
if (!str) break;
|
||||
res=false;
|
||||
str+=7;
|
||||
str=GetToken(str,token,_countof(token),L"}\r\n");
|
||||
int language;
|
||||
if (!GetLocaleInfoEx(token,LOCALE_ILANGUAGE|LOCALE_RETURN_NUMBER,(LPWSTR)&language,4))
|
||||
break;
|
||||
str=GetToken(str,token,_countof(token),L"\r\n");
|
||||
languages[language].bitmap=token;
|
||||
}
|
||||
|
||||
if (!res) return 1;
|
||||
|
||||
FILE *f=NULL;
|
||||
if (_wfopen_s(&f,params[2],L"wb") || !f)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
fwprintf(f,L"\xFEFF");
|
||||
for (std::map<int,LanguageData>::const_iterator it=languages.begin();it!=languages.end();++it)
|
||||
{
|
||||
fwprintf(f,L"/////////////////////////////////////////////////////////////////////////////\r\n");
|
||||
GetLocaleInfo(it->first,LOCALE_SLANGUAGE,token,_countof(token));
|
||||
fwprintf(f,L"// %s\r\n\r\n",token);
|
||||
fwprintf(f,L"LANGUAGE 0x%02X, 0x%X\r\n",it->first&0x3FF,it->first>>10);
|
||||
fwprintf(f,L"\r\nSTRINGTABLE\r\nBEGIN\r\n");
|
||||
for (std::map<int,CString>::const_iterator it2=it->second.strings.begin();it2!=it->second.strings.end();++it2)
|
||||
{
|
||||
CString str=it2->second;
|
||||
str.Replace(L"\r\n",L"\\r\\n");
|
||||
str.Replace(L"\"",L"\"\"");
|
||||
fwprintf(f,L"%4d \"%s\"\r\n",it2->first,(const wchar_t*)str);
|
||||
}
|
||||
fwprintf(f,L"END\r\n\r\n");
|
||||
|
||||
if (it->first==DEFAULT_LANGUAGE)
|
||||
{
|
||||
fwprintf(f,L"1 VERSIONINFO\r\n");
|
||||
fwprintf(f,L" FILEVERSION %d,%d,%d,0\r\n",v1,v2,v3);
|
||||
fwprintf(f,L" PRODUCTVERSION %d,%d,%d,0\r\n",v1,v2,v3);
|
||||
fwprintf(f,L" FILEFLAGSMASK 0x17L\r\n");
|
||||
fwprintf(f,L" FILEFLAGS 0x0L\r\n");
|
||||
fwprintf(f,L" FILEOS 0x4L\r\n");
|
||||
fwprintf(f,L" FILETYPE 0x1L\r\n");
|
||||
fwprintf(f,L" FILESUBTYPE 0x0L\r\n");
|
||||
fwprintf(f,L"BEGIN\r\n");
|
||||
fwprintf(f,L"\tBLOCK \"StringFileInfo\"\r\n");
|
||||
fwprintf(f,L"\tBEGIN\r\n");
|
||||
fwprintf(f,L"\t\tBLOCK \"040904b0\"\r\n");
|
||||
fwprintf(f,L"\t\tBEGIN\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"CompanyName\", \"OpenShell\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"FileDescription\", \"Update information\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"FileVersion\", \"%d, %d, %d, 0\"\r\n",v1,v2,v3);
|
||||
fwprintf(f,L"\t\t\tVALUE \"InternalName\", \"Update\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"LegalCopyright\", \"Copyright (C) 2017-2018, The Open-Shell Team\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"OriginalFilename\", \"update.ver\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"ProductName\", \"Open-Shell\"\r\n");
|
||||
fwprintf(f,L"\t\t\tVALUE \"ProductVersion\", \"%d, %d, %d, 0\"\r\n",v1,v2,v3);
|
||||
fwprintf(f,L"\t\tEND\r\n");
|
||||
fwprintf(f,L"\tEND\r\n");
|
||||
fwprintf(f,L"\tBLOCK \"VarFileInfo\"\r\n");
|
||||
fwprintf(f,L"\tBEGIN\r\n");
|
||||
fwprintf(f,L"\t\tVALUE \"Translation\", 0x409, 1200\r\n");
|
||||
fwprintf(f,L"\tEND\r\n");
|
||||
fwprintf(f,L"END\r\n\r\n");
|
||||
|
||||
for (std::map<int,LanguageData>::const_iterator it3=languages.begin();it3!=languages.end();++it3)
|
||||
{
|
||||
if (!it3->second.bitmap.IsEmpty())
|
||||
fwprintf(f,L"%d BITMAP \"%s\"\r\n",it3->first,(const wchar_t*)it3->second.bitmap);
|
||||
}
|
||||
fwprintf(f,L"\r\n");
|
||||
}
|
||||
}
|
||||
fclose(f);
|
||||
return 0;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
static void UnsescapeString( wchar_t *string )
|
||||
{
|
||||
wchar_t *dst=string;
|
||||
@@ -1097,7 +846,6 @@ static HRESULT CALLBACK TaskDialogCallback( HWND hwnd, UINT uNotification, WPARA
|
||||
// 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
|
||||
// import <dll> <csv> // replaces the string table in the DLL with the text from the CSV
|
||||
// update <update txt> <update rc> // generates a resource file for UpdateBin.dll by calculating the DLL hashes
|
||||
|
||||
int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpstrCmdLine, int nCmdShow )
|
||||
{
|
||||
@@ -1122,7 +870,7 @@ int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpstrC
|
||||
tasks.pszMainInstruction=L"Select task to perform";
|
||||
tasks.cButtons=HIWORD(winVer)>=0x0602?4:3;
|
||||
tasks.pButtons=taskButtons;
|
||||
tasks.pszFooter=L"<A HREF=\"http://www.classicshell.net\">www.classicshell.net</A>";
|
||||
tasks.pszFooter=L"<A HREF=\"https://open-shell.github.io/Open-Shell-Menu\">Open-Shell Homepage</A>";
|
||||
tasks.pfCallback=TaskDialogCallback;
|
||||
|
||||
int seleciton;
|
||||
@@ -1176,11 +924,6 @@ int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpstrC
|
||||
return ImportStrings(params,count);
|
||||
}
|
||||
|
||||
if (_wcsicmp(params[0],L"update")==0)
|
||||
{
|
||||
return GenerateUpdateFile(params,count);
|
||||
}
|
||||
|
||||
if (_wcsicmp(params[0],L"colors")==0)
|
||||
{
|
||||
ShowMetroColorViewer();
|
||||
|
||||
@@ -52,7 +52,7 @@ END
|
||||
// FILE
|
||||
//
|
||||
|
||||
1 FILE "Release64\\Utility.exe"
|
||||
1 FILE "..\\..\\..\\build\\bin\\Release64\\Utility.exe"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
|
||||