1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-06-18 16:17:14 +02:00

Update POCO library.

This commit is contained in:
Sandu Liviu Catalin
2023-03-23 20:19:11 +02:00
parent 8d15f4b6e9
commit 233fc103f9
2521 changed files with 257092 additions and 72789 deletions

View File

@ -42,7 +42,7 @@ endif()
target_include_directories(Util
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src
)

View File

@ -8,7 +8,7 @@ include $(POCO_BASE)/build/rules/global
objects = AbstractConfiguration Application ConfigurationMapper \
ConfigurationView HelpFormatter IniFileConfiguration LayeredConfiguration \
LoggingConfigurator LoggingSubsystem MapConfiguration \
LocalConfigurationView LoggingConfigurator LoggingSubsystem MapConfiguration \
Option OptionException OptionProcessor OptionSet \
PropertyFileConfiguration Subsystem SystemConfiguration \
FilesystemConfiguration ServerApplication \

View File

@ -8,6 +8,7 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = ${vc.project.name}_vs90.vcproj
vc.project.compiler.include = ..\\Foundation\\include;..\\XML\\include;..\\JSON\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus
vc.project.compiler.defines =
vc.project.compiler.defines.shared = ${vc.project.name}_EXPORTS
vc.project.compiler.defines.debug_shared = ${vc.project.compiler.defines.shared}

View File

@ -551,6 +551,7 @@
<ClInclude Include="include\Poco\Util\IntValidator.h"/>
<ClInclude Include="include\Poco\Util\JSONConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h"/>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h"/>
<ClInclude Include="include\Poco\Util\LoggingSubsystem.h"/>
<ClInclude Include="include\Poco\Util\MapConfiguration.h"/>
@ -605,6 +606,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -188,6 +191,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

View File

@ -551,6 +551,7 @@
<ClInclude Include="include\Poco\Util\IntValidator.h"/>
<ClInclude Include="include\Poco\Util\JSONConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h"/>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h"/>
<ClInclude Include="include\Poco\Util\LoggingSubsystem.h"/>
<ClInclude Include="include\Poco\Util\MapConfiguration.h"/>
@ -605,6 +606,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -188,6 +191,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

View File

@ -551,6 +551,7 @@
<ClInclude Include="include\Poco\Util\IntValidator.h"/>
<ClInclude Include="include\Poco\Util\JSONConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h"/>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h"/>
<ClInclude Include="include\Poco\Util\LoggingSubsystem.h"/>
<ClInclude Include="include\Poco\Util\MapConfiguration.h"/>
@ -605,6 +606,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -188,6 +191,9 @@
<ClCompile Include="src\LayeredConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

144
vendor/POCO/Util/Util_vs170.sln vendored Normal file
View File

@ -0,0 +1,144 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Util", "Util_vs170.vcxproj", "{6FF56CDB-787A-4714-A28C-919003F9FA6C}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestSuite", "testsuite\TestSuite_vs170.vcxproj", "{E40E738C-447B-40F4-A878-EBA9A2459270}"
ProjectSection(ProjectDependencies) = postProject
{6FF56CDB-787A-4714-A28C-919003F9FA6C} = {6FF56CDB-787A-4714-A28C-919003F9FA6C}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
debug_shared|ARM64 = debug_shared|ARM64
release_shared|ARM64 = release_shared|ARM64
debug_static_mt|ARM64 = debug_static_mt|ARM64
release_static_mt|ARM64 = release_static_mt|ARM64
debug_static_md|ARM64 = debug_static_md|ARM64
release_static_md|ARM64 = release_static_md|ARM64
debug_shared|Win32 = debug_shared|Win32
release_shared|Win32 = release_shared|Win32
debug_static_mt|Win32 = debug_static_mt|Win32
release_static_mt|Win32 = release_static_mt|Win32
debug_static_md|Win32 = debug_static_md|Win32
release_static_md|Win32 = release_static_md|Win32
debug_shared|x64 = debug_shared|x64
release_shared|x64 = release_shared|x64
debug_static_mt|x64 = debug_static_mt|x64
release_static_mt|x64 = release_static_mt|x64
debug_static_md|x64 = debug_static_md|x64
release_static_md|x64 = release_static_md|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|ARM64.Build.0 = release_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|Win32.Build.0 = debug_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|Win32.ActiveCfg = release_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|Win32.Build.0 = release_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|Win32.Deploy.0 = release_shared|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|Win32.Build.0 = release_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|x64.ActiveCfg = debug_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|x64.Build.0 = debug_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_shared|x64.Deploy.0 = debug_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|x64.ActiveCfg = release_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|x64.Build.0 = release_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_shared|x64.Deploy.0 = release_shared|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|x64.Build.0 = release_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|x64.Build.0 = debug_static_md|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|x64.ActiveCfg = release_static_md|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|x64.Build.0 = release_static_md|x64
{6FF56CDB-787A-4714-A28C-919003F9FA6C}.release_static_md|x64.Deploy.0 = release_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|ARM64.Build.0 = release_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|Win32.Build.0 = debug_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|Win32.ActiveCfg = release_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|Win32.Build.0 = release_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|Win32.Deploy.0 = release_shared|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|Win32.Build.0 = release_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|x64.ActiveCfg = debug_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|x64.Build.0 = debug_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_shared|x64.Deploy.0 = debug_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|x64.ActiveCfg = release_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|x64.Build.0 = release_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_shared|x64.Deploy.0 = release_shared|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|x64.Build.0 = release_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|x64.Build.0 = debug_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|x64.ActiveCfg = release_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|x64.Build.0 = release_static_md|x64
{E40E738C-447B-40F4-A878-EBA9A2459270}.release_static_md|x64.Deploy.0 = release_static_md|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

954
vendor/POCO/Util/Util_vs170.vcxproj vendored Normal file
View File

@ -0,0 +1,954 @@
<?xml version="1.0" encoding="UTF-8"?>
<Project DefaultTargets="Build" ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="debug_shared|ARM64">
<Configuration>debug_shared</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|Win32">
<Configuration>debug_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|x64">
<Configuration>debug_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|ARM64">
<Configuration>debug_static_md</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|Win32">
<Configuration>debug_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|x64">
<Configuration>debug_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|ARM64">
<Configuration>debug_static_mt</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|Win32">
<Configuration>debug_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|x64">
<Configuration>debug_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|ARM64">
<Configuration>release_shared</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|Win32">
<Configuration>release_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|x64">
<Configuration>release_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|ARM64">
<Configuration>release_static_md</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|Win32">
<Configuration>release_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|x64">
<Configuration>release_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|ARM64">
<Configuration>release_static_mt</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|Win32">
<Configuration>release_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|x64">
<Configuration>release_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<ProjectName>Util</ProjectName>
<ProjectGuid>{6FF56CDB-787A-4714-A28C-919003F9FA6C}</ProjectGuid>
<RootNamespace>Util</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|ARM64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|ARM64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings"/>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|ARM64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup>
<_ProjectFileVersion>17.0.32505.173</_ProjectFileVersion>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|ARM64'">PocoUtilA64d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'">PocoUtilmdd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'">PocoUtilmtd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|ARM64'">PocoUtilA64</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'">PocoUtilmd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'">PocoUtilmt</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">PocoUtild</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">PocoUtilmdd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">PocoUtilmtd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">PocoUtil</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">PocoUtilmd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">PocoUtilmt</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">PocoUtil64d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">PocoUtilmdd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">PocoUtilmtd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">PocoUtil64</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">PocoUtilmd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">PocoUtilmt</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|ARM64'">
<OutDir>..\binA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|ARM64'">
<OutDir>..\binA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'">
<OutDir>..\libA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'">
<OutDir>..\libA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'">
<OutDir>..\libA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'">
<OutDir>..\libA64\</OutDir>
<IntDir>objA64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<OutDir>..\bin\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<OutDir>..\bin\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<OutDir>..\lib\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<OutDir>..\lib\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<OutDir>..\lib\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<OutDir>..\lib\</OutDir>
<IntDir>obj\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<OutDir>..\bin64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<OutDir>..\bin64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<OutDir>..\lib64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<OutDir>..\lib64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<OutDir>..\lib64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<OutDir>..\lib64\</OutDir>
<IntDir>obj64\Util\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|ARM64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\binA64\PocoUtilA64d.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>..\binA64\PocoUtilA64d.pdb</ProgramDatabaseFile>
<AdditionalLibraryDirectories>..\libA64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<ImportLibrary>..\libA64\PocoUtild.lib</ImportLibrary>
<TargetMachine>MachineARM64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|ARM64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\binA64\PocoUtilA64.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>false</GenerateDebugInformation>
<AdditionalLibraryDirectories>..\libA64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>..\libA64\PocoUtil.lib</ImportLibrary>
<TargetMachine>MachineARM64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\libA64\PocoUtilmtd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\libA64\PocoUtilmtd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\libA64\PocoUtilmt.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\libA64\PocoUtilmdd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\libA64\PocoUtilmdd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\libA64\PocoUtilmd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\bin\PocoUtild.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>..\bin\PocoUtild.pdb</ProgramDatabaseFile>
<AdditionalLibraryDirectories>..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<ImportLibrary>..\lib\PocoUtild.lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\bin\PocoUtil.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>false</GenerateDebugInformation>
<AdditionalLibraryDirectories>..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>..\lib\PocoUtil.lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\lib\PocoUtilmtd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib\PocoUtilmtd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib\PocoUtilmt.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\lib\PocoUtilmdd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib\PocoUtilmdd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\lib\PocoUtilmd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib\PocoUtilmd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\bin64\PocoUtil64d.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>..\bin64\PocoUtil64d.pdb</ProgramDatabaseFile>
<AdditionalLibraryDirectories>..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<ImportLibrary>..\lib64\PocoUtild.lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;Util_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>..\bin64\PocoUtil64.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>false</GenerateDebugInformation>
<AdditionalLibraryDirectories>..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>..\lib64\PocoUtil.lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\lib64\PocoUtilmtd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib64\PocoUtilmtd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib64\PocoUtilmt.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<ProgramDataBaseFileName>..\lib64\PocoUtilmdd.pdb</ProgramDataBaseFileName>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib64\PocoUtilmdd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\Foundation\include;..\XML\include;..\JSON\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Lib>
<OutputFile>..\lib64\PocoUtilmd.lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="include\Poco\Util\AbstractConfiguration.h"/>
<ClInclude Include="include\Poco\Util\Application.h"/>
<ClInclude Include="include\Poco\Util\ConfigurationMapper.h"/>
<ClInclude Include="include\Poco\Util\ConfigurationView.h"/>
<ClInclude Include="include\Poco\Util\FilesystemConfiguration.h"/>
<ClInclude Include="include\Poco\Util\HelpFormatter.h"/>
<ClInclude Include="include\Poco\Util\IniFileConfiguration.h"/>
<ClInclude Include="include\Poco\Util\IntValidator.h"/>
<ClInclude Include="include\Poco\Util\JSONConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h"/>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h"/>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h"/>
<ClInclude Include="include\Poco\Util\LoggingSubsystem.h"/>
<ClInclude Include="include\Poco\Util\MapConfiguration.h"/>
<ClInclude Include="include\Poco\Util\Option.h"/>
<ClInclude Include="include\Poco\Util\OptionCallback.h"/>
<ClInclude Include="include\Poco\Util\OptionException.h"/>
<ClInclude Include="include\Poco\Util\OptionProcessor.h"/>
<ClInclude Include="include\Poco\Util\OptionSet.h"/>
<ClInclude Include="include\Poco\Util\PropertyFileConfiguration.h"/>
<ClInclude Include="include\Poco\Util\RegExpValidator.h"/>
<ClInclude Include="include\Poco\Util\ServerApplication.h"/>
<ClInclude Include="include\Poco\Util\Subsystem.h"/>
<ClInclude Include="include\Poco\Util\SystemConfiguration.h"/>
<ClInclude Include="include\Poco\Util\Timer.h"/>
<ClInclude Include="include\Poco\Util\TimerTask.h"/>
<ClInclude Include="include\Poco\Util\TimerTaskAdapter.h"/>
<ClInclude Include="include\Poco\Util\Util.h"/>
<ClInclude Include="include\Poco\Util\Validator.h"/>
<ClInclude Include="include\Poco\Util\WinRegistryConfiguration.h"/>
<ClInclude Include="include\Poco\Util\WinRegistryKey.h"/>
<ClInclude Include="include\Poco\Util\WinService.h"/>
<ClInclude Include="include\Poco\Util\XMLConfiguration.h"/>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\AbstractConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\Application.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\ConfigurationMapper.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\ConfigurationView.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\FilesystemConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\HelpFormatter.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\IniFileConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\IntValidator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\JSONConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LayeredConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingSubsystem.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\MapConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\Option.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\OptionCallback.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\OptionException.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\OptionProcessor.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\OptionSet.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\PropertyFileConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\RegExpValidator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\ServerApplication.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\Subsystem.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\SystemConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\Timer.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\TimerTask.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\Validator.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\WinRegistryConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\WinRegistryKey.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\WinService.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\XMLConfiguration.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\DLLVersion.rc">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_md|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_md|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_mt|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">true</ExcludedFromBuild>
</ResourceCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets"/>
</Project>

View File

@ -0,0 +1,258 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Application">
<UniqueIdentifier>{b8490675-eb3e-48ae-8d47-3e62ffb80c2f}</UniqueIdentifier>
</Filter>
<Filter Include="Application\Header Files">
<UniqueIdentifier>{dfbff407-74ed-440f-980f-5950d5acc80c}</UniqueIdentifier>
</Filter>
<Filter Include="Application\Source Files">
<UniqueIdentifier>{cb9715c5-2cbb-481d-9055-bf63a8150519}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration">
<UniqueIdentifier>{89f286bf-4872-4f1e-8fb1-5a68ceb7b0b2}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration\Header Files">
<UniqueIdentifier>{ba5872d1-739f-4815-8e2f-06d9e27ac4aa}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration\Source Files">
<UniqueIdentifier>{1059ef14-1fcf-478d-ab23-c5503e42a679}</UniqueIdentifier>
</Filter>
<Filter Include="Options">
<UniqueIdentifier>{11ec7246-2e9f-46e4-af40-558cc128f9d9}</UniqueIdentifier>
</Filter>
<Filter Include="Options\Header Files">
<UniqueIdentifier>{2d1f22a5-fa02-4d66-9a2a-12ab39eba27c}</UniqueIdentifier>
</Filter>
<Filter Include="Options\Source Files">
<UniqueIdentifier>{66810fd8-8df3-45a8-99b7-4bcf92224038}</UniqueIdentifier>
</Filter>
<Filter Include="Windows">
<UniqueIdentifier>{31314d80-c80d-4e94-adcc-118125ff9a35}</UniqueIdentifier>
</Filter>
<Filter Include="Windows\Header Files">
<UniqueIdentifier>{cde63aa2-178d-4f4f-a0f3-71b9ec5d568b}</UniqueIdentifier>
</Filter>
<Filter Include="Windows\Source Files">
<UniqueIdentifier>{b4ce461e-5b9d-4571-9cde-607d8bea3442}</UniqueIdentifier>
</Filter>
<Filter Include="Util">
<UniqueIdentifier>{8406a20a-d687-49e1-b547-f501873ee45c}</UniqueIdentifier>
</Filter>
<Filter Include="Util\Header Files">
<UniqueIdentifier>{ad27901a-89e3-4666-aabd-cdc836a1fc17}</UniqueIdentifier>
</Filter>
<Filter Include="Util\Source Files">
<UniqueIdentifier>{99ce5375-3565-4add-a133-233d46ee006e}</UniqueIdentifier>
</Filter>
<Filter Include="Timer">
<UniqueIdentifier>{7d617013-451c-4f49-9b3c-2f14336af909}</UniqueIdentifier>
</Filter>
<Filter Include="Timer\Header Files">
<UniqueIdentifier>{8db98792-b008-4859-b1b9-eeab8e0980dd}</UniqueIdentifier>
</Filter>
<Filter Include="Timer\Source Files">
<UniqueIdentifier>{e6241b6d-3b96-4355-a613-110c07c4863f}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="include\Poco\Util\Application.h">
<Filter>Application\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LoggingSubsystem.h">
<Filter>Application\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\ServerApplication.h">
<Filter>Application\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\Subsystem.h">
<Filter>Application\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\AbstractConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\ConfigurationMapper.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\ConfigurationView.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\FilesystemConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\IniFileConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\JSONConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LayeredConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LocalConfigurationView.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\LoggingConfigurator.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\MapConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\PropertyFileConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\SystemConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\XMLConfiguration.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\HelpFormatter.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\IntValidator.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\Option.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\OptionCallback.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\OptionException.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\OptionProcessor.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\OptionSet.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\RegExpValidator.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\Validator.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\WinRegistryConfiguration.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\WinRegistryKey.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\WinService.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\Util.h">
<Filter>Util\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\Timer.h">
<Filter>Timer\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\TimerTask.h">
<Filter>Timer\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Util\TimerTaskAdapter.h">
<Filter>Timer\Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\Application.cpp">
<Filter>Application\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingSubsystem.cpp">
<Filter>Application\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ServerApplication.cpp">
<Filter>Application\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Subsystem.cpp">
<Filter>Application\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\AbstractConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ConfigurationMapper.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ConfigurationView.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\FilesystemConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\IniFileConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\JSONConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LayeredConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationView.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfigurator.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\MapConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\PropertyFileConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\SystemConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\XMLConfiguration.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\HelpFormatter.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\IntValidator.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Option.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionCallback.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionException.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionProcessor.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionSet.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\RegExpValidator.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Validator.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinRegistryConfiguration.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinRegistryKey.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinService.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Timer.cpp">
<Filter>Timer\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\TimerTask.cpp">
<Filter>Timer\Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\DLLVersion.rc" />
</ItemGroup>
</Project>

View File

@ -571,6 +571,10 @@
RelativePath=".\include\Poco\Util\LayeredConfiguration.h"
>
</File>
<File
RelativePath=".\include\Poco\Util\LocalConfigurationView.h"
>
</File>
<File
RelativePath=".\include\Poco\Util\LoggingConfigurator.h"
>
@ -623,6 +627,10 @@
RelativePath=".\src\LayeredConfiguration.cpp"
>
</File>
<File
RelativePath=".\src\LocalConfigurationView.cpp"
>
</File>
<File
RelativePath=".\src\LoggingConfigurator.cpp"
>

View File

@ -1,5 +1,9 @@
include(CMakeFindDependencyMacro)
find_dependency(PocoFoundation)
find_dependency(PocoXML)
find_dependency(PocoJSON)
if(ENABLE_XML)
find_dependency(PocoXML)
endif()
if(ENABLE_JSON)
find_dependency(PocoJSON)
endif()
include("${CMAKE_CURRENT_LIST_DIR}/PocoUtilTargets.cmake")

View File

@ -49,7 +49,7 @@ class Util_API AbstractConfiguration: public Poco::RefCountedObject
public:
using Keys = std::vector<std::string>;
using Ptr = AutoPtr<AbstractConfiguration>;
class KeyValue
/// A key-value pair, used as event argument.
{
@ -59,27 +59,27 @@ public:
_value(value)
{
}
const std::string& key() const
{
return _key;
}
const std::string& value() const
{
return _value;
}
std::string& value()
{
return _value;
}
private:
const std::string& _key;
std::string& _value;
};
Poco::BasicEvent<KeyValue> propertyChanging;
/// Fired before a property value is changed or
/// a new property is created.
@ -101,7 +101,7 @@ public:
/// Note: This will even be fired if the key
/// does not exist and the remove operation will
/// fail with an exception.
Poco::BasicEvent<const std::string> propertyRemoved;
/// Fired after a property has been removed by
/// a call to remove().
@ -121,13 +121,13 @@ public:
/// Returns true iff the property with the given key exists.
///
/// Same as hasProperty().
std::string getString(const std::string& key) const;
/// Returns the string value of the property with the given name.
/// Throws a NotFoundException if the key does not exist.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
std::string getString(const std::string& key, const std::string& defaultValue) const;
/// If a property with the given key exists, returns the property's string value,
/// otherwise returns the given default value.
@ -138,12 +138,12 @@ public:
/// Returns the raw string value of the property with the given name.
/// Throws a NotFoundException if the key does not exist.
/// References to other properties are not expanded.
std::string getRawString(const std::string& key, const std::string& defaultValue) const;
/// If a property with the given key exists, returns the property's raw string value,
/// otherwise returns the given default value.
/// References to other properties are not expanded.
int getInt(const std::string& key) const;
/// Returns the int value of the property with the given name.
/// Throws a NotFoundException if the key does not exist.
@ -152,7 +152,7 @@ public:
/// Numbers starting with 0x are treated as hexadecimal.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
unsigned int getUInt(const std::string& key) const;
/// Returns the unsigned int value of the property with the given name.
/// Throws a NotFoundException if the key does not exist.
@ -161,7 +161,7 @@ public:
/// Numbers starting with 0x are treated as hexadecimal.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
int getInt(const std::string& key, int defaultValue) const;
/// If a property with the given key exists, returns the property's int value,
/// otherwise returns the given default value.
@ -170,7 +170,7 @@ public:
/// Numbers starting with 0x are treated as hexadecimal.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
unsigned int getUInt(const std::string& key, unsigned int defaultValue) const;
/// If a property with the given key exists, returns the property's unsigned int
/// value, otherwise returns the given default value.
@ -227,7 +227,7 @@ public:
/// to a double.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
double getDouble(const std::string& key, double defaultValue) const;
/// If a property with the given key exists, returns the property's double value,
/// otherwise returns the given default value.
@ -243,7 +243,7 @@ public:
/// to a boolean.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
bool getBool(const std::string& key, bool defaultValue) const;
/// If a property with the given key exists, returns the property's boolean value,
/// otherwise returns the given default value.
@ -255,15 +255,15 @@ public:
/// Case does not matter.
/// If the value contains references to other properties (${<property>}), these
/// are expanded.
virtual void setString(const std::string& key, const std::string& value);
/// Sets the property with the given key to the given value.
/// An already existing value for the key is overwritten.
virtual void setInt(const std::string& key, int value);
/// Sets the property with the given key to the given value.
/// An already existing value for the key is overwritten.
virtual void setUInt(const std::string& key, unsigned int value);
/// Sets the property with the given key to the given value.
/// An already existing value for the key is overwritten.
@ -287,19 +287,25 @@ public:
virtual void setBool(const std::string& key, bool value);
/// Sets the property with the given key to the given value.
/// An already existing value for the key is overwritten.
void keys(Keys& range) const;
/// Returns in range the names of all keys at root level.
void keys(const std::string& key, Keys& range) const;
/// Returns in range the names of all subkeys under the given key.
/// If an empty key is passed, all root level keys are returned.
const Ptr createView(const std::string& prefix) const;
/// Creates a non-mutable view (see ConfigurationView) into the configuration.
Ptr createView(const std::string& prefix);
/// Creates a view (see ConfigurationView) into the configuration.
const Ptr createLocalView(const std::string& prefix) const;
/// Creates a non-mutable view (see LocalConfigurationView) into the configuration.
Ptr createLocalView(const std::string& prefix);
/// Creates a view (see LocalConfigurationView) into the configuration.
std::string expand(const std::string& value) const;
/// Replaces all occurrences of ${<property>} in value with the
@ -313,13 +319,13 @@ public:
/// Removes the property with the given key.
///
/// Does nothing if the key does not exist.
void enableEvents(bool enable = true);
/// Enables (or disables) events.
bool eventsEnabled() const;
/// Returns true iff events are enabled.
protected:
virtual bool getRaw(const std::string& key, std::string& value) const = 0;
/// If the property with the given key exists, stores the property's value
@ -332,11 +338,11 @@ protected:
/// An already existing value for the key is overwritten.
///
/// Must be overridden by subclasses.
virtual void enumerate(const std::string& key, Keys& range) const = 0;
/// Returns in range the names of all subkeys under the given key.
/// If an empty key is passed, all root level keys are returned.
virtual void removeRaw(const std::string& key);
/// Removes the property with the given key.
///
@ -367,7 +373,7 @@ protected:
static bool parseBool(const std::string& value);
void setRawWithEvent(const std::string& key, std::string value);
virtual ~AbstractConfiguration();
private:
@ -380,9 +386,10 @@ private:
mutable int _depth;
bool _eventsEnabled;
mutable Poco::Mutex _mutex;
friend class LayeredConfiguration;
friend class ConfigurationView;
friend class LocalConfigurationView;
friend class ConfigurationMapper;
};

View File

@ -520,7 +520,7 @@ inline Poco::Timespan Application::uptime() const
} \
return pApp->run(); \
}
#elif defined(POCO_VXWORKS)
#elif defined(POCO_VXWORKS) && !defined(POCO_VXWORKS_RTP)
#define POCO_APP_MAIN(App) \
int pocoAppMain(const char* appName, ...) \
{ \

View File

@ -29,7 +29,7 @@ namespace Util {
class Util_API ConfigurationMapper: public AbstractConfiguration
/// This configuration maps a property hierarchy into another
/// hierarchy.
///
///
/// For example, given a configuration with the following properties:
/// config.value1
/// config.value2
@ -73,9 +73,9 @@ protected:
void setRaw(const std::string& key, const std::string& value);
void enumerate(const std::string& key, Keys& range) const;
void removeRaw(const std::string& key);
std::string translateKey(const std::string& key) const;
~ConfigurationMapper();
private:

View File

@ -27,9 +27,9 @@ namespace Util {
class Util_API ConfigurationView: public AbstractConfiguration
/// This configuration implements a "view" into a sub-hierarchy
/// This configuration implements a "view" into a sub-hierarchy
/// of another configuration.
///
///
/// For example, given a configuration with the following properties:
/// config.value1
/// config.value2
@ -62,9 +62,9 @@ protected:
void setRaw(const std::string& key, const std::string& value);
void enumerate(const std::string& key, Keys& range) const;
void removeRaw(const std::string& key);
std::string translateKey(const std::string& key) const;
~ConfigurationView();
private:

View File

@ -38,7 +38,7 @@ class Util_API FilesystemConfiguration: public AbstractConfiguration
/// All changes to properties are immediately persisted in the filesystem.
///
/// For example, a configuration consisting of the properties
///
///
/// logging.loggers.root.channel.class = ConsoleChannel
/// logging.loggers.app.name = Application
/// logging.loggers.app.channel = c1
@ -63,7 +63,7 @@ class Util_API FilesystemConfiguration: public AbstractConfiguration
/// class/
/// data ("PatternFormatter")
/// pattern/
/// data ("[%p] %t")
/// data ("[%p] %t")
{
public:
FilesystemConfiguration(const std::string& path);

View File

@ -36,7 +36,7 @@ class Util_API HelpFormatter
public:
HelpFormatter(const OptionSet& options);
/// Creates the HelpFormatter, using the given
/// options.
/// options.
///
/// The HelpFormatter just stores a reference
/// to the given OptionSet, so the OptionSet must not
@ -47,34 +47,34 @@ public:
void setCommand(const std::string& command);
/// Sets the command name.
const std::string& getCommand() const;
/// Returns the command name.
void setUsage(const std::string& usage);
/// Sets the usage string.
const std::string& getUsage() const;
/// Returns the usage string.
void setHeader(const std::string& header);
/// Sets the header string.
const std::string& getHeader() const;
/// Returns the header string.
void setFooter(const std::string& footer);
/// Sets the footer string.
const std::string& getFooter() const;
/// Returns the footer string.
void format(std::ostream& ostr) const;
/// Writes the formatted help text to the given stream.
void setWidth(int width);
/// Sets the line width for the formatted help text.
int getWidth() const;
/// Returns the line width for the formatted help text.
///
@ -85,10 +85,10 @@ public:
int getIndent() const;
/// Returns the indentation for description continuation lines.
void setAutoIndent();
/// Sets the indentation for description continuation lines so that
/// the description text is left-aligned.
/// the description text is left-aligned.
void setUnixStyle(bool flag);
/// Enables Unix-style options. Both short and long option names
@ -97,14 +97,14 @@ public:
///
/// After calling setUnixStyle(), setAutoIndent() should be called
/// as well to ensure proper help text formatting.
bool isUnixStyle() const;
/// Returns if Unix-style options are set.
std::string shortPrefix() const;
/// Returns the platform-specific prefix for short options.
/// "-" on Unix, "/" on Windows and OpenVMS.
std::string longPrefix() const;
/// Returns the platform-specific prefix for long options.
/// "--" on Unix, "/" on Windows and OpenVMS.
@ -129,10 +129,10 @@ protected:
void formatWord(std::ostream& ostr, int& pos, const std::string& word, int indent) const;
/// Formats the given word.
void clearWord(std::ostream& ostr, int& pos, std::string& word, int indent) const;
/// Formats and then clears the given word.
private:
HelpFormatter(const HelpFormatter&);
HelpFormatter& operator = (const HelpFormatter&);
@ -145,7 +145,7 @@ private:
std::string _header;
std::string _footer;
bool _unixStyle;
static const int TAB_WIDTH;
static const int LINE_WIDTH;
};

View File

@ -56,17 +56,17 @@ public:
IniFileConfiguration(std::istream& istr);
/// Creates an IniFileConfiguration and loads the configuration data
/// from the given stream, which must be in initialization file format.
IniFileConfiguration(const std::string& path);
/// Creates an IniFileConfiguration and loads the configuration data
/// from the given file, which must be in initialization file format.
void load(std::istream& istr);
/// Loads the configuration data from the given stream, which
/// Loads the configuration data from the given stream, which
/// must be in initialization file format.
void load(const std::string& path);
/// Loads the configuration data from the given file, which
/// Loads the configuration data from the given file, which
/// must be in initialization file format.
protected:
@ -84,7 +84,7 @@ private:
bool operator () (const std::string& s1, const std::string& s2) const;
};
typedef std::map<std::string, std::string, ICompare> IStringMap;
IStringMap _map;
std::string _sectionKey;
};

View File

@ -108,10 +108,10 @@ public:
virtual void setString(const std::string& key, const std::string& value);
virtual void removeRaw(const std::string& key);
virtual void removeRaw(const std::string& key);
protected:

View File

@ -35,8 +35,8 @@ class Util_API LayeredConfiguration: public AbstractConfiguration
/// all added configurations are searched, in order of their priority.
/// Configurations with lower priority values have precedence.
///
/// When setting a property, the property is always written to the first writeable
/// configuration (see addWriteable()).
/// When setting a property, the property is always written to the first writeable
/// configuration (see addWriteable()).
/// If no writeable configuration has been added to the LayeredConfiguration, and an
/// attempt is made to set a property, a RuntimeException is thrown.
///
@ -51,7 +51,7 @@ public:
LayeredConfiguration();
/// Creates the LayeredConfiguration.
void add(AbstractConfiguration::Ptr pConfig);
/// Adds a read-only configuration to the back of the LayeredConfiguration.
/// The LayeredConfiguration takes shared ownership of the given configuration.
@ -92,8 +92,8 @@ public:
///
/// Does nothing if the given configuration is not part of the
/// LayeredConfiguration.
protected:
protected:
struct ConfigItem
{
typedef AbstractConfiguration::Ptr ACPtr;
@ -107,11 +107,11 @@ protected:
void setRaw(const std::string& key, const std::string& value);
void enumerate(const std::string& key, Keys& range) const;
void removeRaw(const std::string& key);
int lowest() const;
int highest() const;
void insert(const ConfigItem& item);
~LayeredConfiguration();
private:
@ -119,7 +119,7 @@ private:
LayeredConfiguration& operator = (const LayeredConfiguration&);
typedef std::list<ConfigItem> ConfigList;
ConfigList _configs;
};

View File

@ -0,0 +1,71 @@
//
// LocalConfigurationView.h
//
// Library: Util
// Package: Configuration
// Module: LocalConfigurationView
//
// Definition of the ConfigurationView class.
//
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
#ifndef Util_LocalConfigurationView_INCLUDED
#define Util_LocalConfigurationView_INCLUDED
#include "Poco/Util/AbstractConfiguration.h"
#include "Poco/Util/Util.h"
namespace Poco {
namespace Util {
class Util_API LocalConfigurationView : public AbstractConfiguration
/// This configuration implements a "view" into a sub-hierarchy
/// of another configuration.
///
/// For example, given a configuration with the following properties:
/// config.value1
/// config.value2
/// config.sub.value1
/// config.sub.value2
/// and a LocalConfigurationView with the prefix "config", then
/// the above properties will be available via the view as
/// value1
/// value2
/// sub.value1
/// sub.value2
///
/// A LocalConfigurationView is most useful in combination with a
/// LayeredConfiguration.
///
/// The LocalConfigurationView only searches for the properties in the viewed Space.
{
public:
LocalConfigurationView(const std::string& prefix, AbstractConfiguration::Ptr pConfig);
/// Creates the LocalConfigurationView. The LocalConfigurationView
/// retains (shared) ownership of the passed configuration.
protected:
bool getRaw(const std::string& key, std::string& value) const;
void setRaw(const std::string& key, const std::string& value);
void enumerate(const std::string& key, Keys& range) const;
void removeRaw(const std::string& key);
std::string translateKey(const std::string& key) const;
~LocalConfigurationView();
private:
LocalConfigurationView(const LocalConfigurationView&);
LocalConfigurationView& operator=(const LocalConfigurationView&);
std::string _prefix;
AbstractConfiguration::Ptr _pConfig;
};
}} // namespace Poco::Util
#endif // Util_LocalConfigurationView_INCLUDED

View File

@ -32,17 +32,17 @@ class Util_API LoggingConfigurator
/// This utility class uses a configuration object to configure the
/// logging subsystem of an application.
///
/// The LoggingConfigurator sets up and connects formatters, channels
/// The LoggingConfigurator sets up and connects formatters, channels
/// and loggers. To accomplish its work, the LoggingConfigurator relies on the
/// functionality provided by the LoggingFactory and LoggingRegistry classes.
///
/// The LoggingConfigurator expects all configuration data to be under a root
/// property named "logging".
///
///
/// Configuring Formatters
///
/// A formatter is configured using the "logging.formatters" property. Every
/// formatter has an internal name, which is only used for referring to it
/// A formatter is configured using the "logging.formatters" property. Every
/// formatter has an internal name, which is only used for referring to it
/// during configuration time. This name becomes part of the property name.
/// Every formatter has a mandatory "class" property, which specifies the actual
/// class implementing the formatter. Any other properties are passed on to
@ -68,11 +68,11 @@ class Util_API LoggingConfigurator
/// formatter definition. In either case, when a "formatter" property is
/// present, the channel is automatically "wrapped" in a FormattingChannel
/// object.
///
///
/// Similarly, a channel supports also a "pattern" property, which results
/// in the automatic instantiation of a FormattingChannel object with a
/// connected PatternFormatter.
///
///
/// Examples:
/// logging.channels.c1.class = ConsoleChannel
/// logging.channels.c1.formatter = f1
@ -109,7 +109,7 @@ public:
~LoggingConfigurator();
/// Destroys the LoggingConfigurator.
void configure(AbstractConfiguration::Ptr pConfig);
/// Configures the logging subsystem based on
/// the given configuration.
@ -125,7 +125,7 @@ private:
Poco::Channel::Ptr createChannel(AbstractConfiguration::Ptr pConfig);
void configureChannel(Channel::Ptr pChannel, AbstractConfiguration::Ptr pConfig);
void configureLogger(AbstractConfiguration::Ptr pConfig);
LoggingConfigurator(const LoggingConfigurator&);
LoggingConfigurator& operator = (const LoggingConfigurator&);
};

View File

@ -38,7 +38,7 @@ class Util_API LoggingSubsystem: public Subsystem
public:
LoggingSubsystem();
const char* name() const;
protected:
void initialize(Application& self);
void uninitialize();

View File

@ -53,7 +53,7 @@ protected:
iterator begin() const;
iterator end() const;
private:
private:
StringMap _map;
};

View File

@ -90,19 +90,19 @@ public:
Option& operator = (const Option& option);
/// Assignment operator.
void swap(Option& option);
void swap(Option& option) noexcept;
/// Swaps the option with another one.
Option& shortName(const std::string& name);
/// Sets the short name of the option.
Option& fullName(const std::string& name);
/// Sets the full name of the option.
Option& description(const std::string& text);
/// Sets the description of the option.
Option& required(bool flag);
/// Sets whether the option is required (flag == true)
/// or optional (flag == false).
@ -110,28 +110,28 @@ public:
Option& repeatable(bool flag);
/// Sets whether the option can be specified more than once
/// (flag == true) or at most once (flag == false).
Option& argument(const std::string& name, bool required = true);
/// Specifies that the option takes an (optional or required)
/// argument.
Option& noArgument();
/// Specifies that the option does not take an argument (default).
Option& group(const std::string& group);
/// Specifies the option group the option is part of.
Option& binding(const std::string& propertyName);
/// Binds the option to the configuration property with the given name.
///
/// The configuration will automatically receive the option's argument.
Option& binding(const std::string& propertyName, AbstractConfiguration* pConfig);
/// Binds the option to the configuration property with the given name,
Option& binding(const std::string& propertyName, AbstractConfiguration::Ptr pConfig);
/// Binds the option to the configuration property with the given name,
/// using the given AbstractConfiguration.
///
/// The configuration will automatically receive the option's argument.
Option& callback(const AbstractOptionCallback& cb);
/// Binds the option to the given method.
///
@ -149,49 +149,49 @@ public:
const std::string& shortName() const;
/// Returns the short name of the option.
const std::string& fullName() const;
/// Returns the full name of the option.
const std::string& description() const;
/// Returns the description of the option.
bool required() const;
/// Returns true if the option is required, false if not.
bool repeatable() const;
/// Returns true if the option can be specified more than
/// once, or false if at most once.
bool takesArgument() const;
/// Returns true if the options takes an (optional) argument.
bool argumentRequired() const;
/// Returns true if the argument is required.
const std::string& argumentName() const;
/// Returns the argument name, if specified.
const std::string& group() const;
/// Returns the option group the option is part of,
/// or an empty string, if the option is not part of
/// a group.
const std::string& binding() const;
/// Returns the property name the option is bound to,
/// or an empty string in case it is not bound.
AbstractOptionCallback* callback() const;
/// Returns a pointer to the callback method for the option,
/// or NULL if no callback has been specified.
Validator* validator() const;
/// Returns the option's Validator, if one has been specified,
/// or NULL otherwise.
/// or NULL otherwise.
AbstractConfiguration::Ptr config() const;
/// Returns the configuration, if specified, or NULL otherwise.
bool matchesShort(const std::string& option) const;
/// Returns true if the given option string matches the
/// short name.
@ -214,7 +214,7 @@ public:
///
/// The option string must partially match the full
/// name (case insensitive).
void process(const std::string& option, std::string& arg) const;
/// Verifies that the given option string matches the
/// requirements of the option, and extracts the option argument,
@ -225,7 +225,7 @@ public:
///
/// Throws a MissingArgumentException if a required argument
/// is missing. Throws an UnexpectedArgumentException if an
/// argument has been found, but none is expected.
/// argument has been found, but none is expected.
private:
std::string _shortName;
@ -253,19 +253,19 @@ inline const std::string& Option::shortName() const
return _shortName;
}
inline const std::string& Option::fullName() const
{
return _fullName;
}
inline const std::string& Option::description() const
{
return _description;
}
inline bool Option::required() const
{
return _required;
@ -277,13 +277,13 @@ inline bool Option::repeatable() const
return _repeatable;
}
inline bool Option::takesArgument() const
{
return !_argName.empty();
}
inline bool Option::argumentRequired() const
{
return _argRequired;

View File

@ -31,7 +31,7 @@ class Util_API AbstractOptionCallback
public:
virtual void invoke(const std::string& name, const std::string& value) const = 0;
/// Invokes the callback member function.
virtual AbstractOptionCallback* clone() const = 0;
/// Creates and returns a copy of the object.
@ -61,7 +61,7 @@ public:
{
poco_check_ptr (pObject);
}
OptionCallback(const OptionCallback& cb):
AbstractOptionCallback(cb),
_pObject(cb._pObject),
@ -69,12 +69,12 @@ public:
/// Creates an OptionCallback from another one.
{
}
~OptionCallback()
/// Destroys the OptionCallback.
{
}
OptionCallback& operator = (const OptionCallback& cb)
{
if (&cb != this)
@ -84,20 +84,20 @@ public:
}
return *this;
}
void invoke(const std::string& name, const std::string& value) const
{
(_pObject->*_method)(name, value);
}
AbstractOptionCallback* clone() const
{
return new OptionCallback(_pObject, _method);
}
private:
OptionCallback();
C* _pObject;
Callback _method;
};

View File

@ -56,7 +56,7 @@ class Util_API OptionProcessor
/// In Unix mode, the option prefix is a dash '-'. A dash must be followed
/// by a short option name, or another dash, followed by a (partial)
/// long option name.
/// In default mode, the option prefix is a slash '/', followed by
/// In default mode, the option prefix is a slash '/', followed by
/// a (partial) long option name.
/// If the special option '--' is encountered in Unix mode, all following
/// options are ignored.
@ -64,7 +64,7 @@ class Util_API OptionProcessor
/// Option arguments can be specified in three ways. If a Unix short option
/// ("-o") is given, the argument directly follows the option name, without
/// any delimiting character or space ("-ovalue"). In default option mode, or if a
/// Unix long option ("--option") is given, the option argument is
/// Unix long option ("--option") is given, the option argument is
/// delimited from the option name with either an equal sign ('=') or
/// a colon (':'), as in "--option=value" or "/option:value". Finally,
/// a required option argument can be specified on the command line after the
@ -97,7 +97,7 @@ public:
/// Examines and processes the given command line argument.
///
/// If the argument begins with an option prefix, the option is processed
/// and true is returned. The full option name is stored in optionName and the
/// and true is returned. The full option name is stored in optionName and the
/// option argument, if present, is stored in optionArg.
///
/// If the option does not begin with an option prefix, false is returned.
@ -112,7 +112,7 @@ private:
bool processUnix(const std::string& argument, std::string& optionName, std::string& optionArg);
bool processDefault(const std::string& argument, std::string& optionName, std::string& optionArg);
bool processCommon(const std::string& option, bool isShort, std::string& optionName, std::string& optionArg);
const OptionSet& _options;
bool _unixStyle;
bool _ignore;

View File

@ -48,7 +48,7 @@ public:
void addOption(const Option& option);
/// Adds an option to the collection.
bool hasOption(const std::string& name, bool matchShort = false) const;
/// Returns a true iff an option with the given name exists.
///
@ -58,7 +58,7 @@ public:
/// The name must either match the short or full name of an
/// option. Comparison case sensitive for the short name and
/// not case sensitive for the full name.
const Option& getOption(const std::string& name, bool matchShort = false) const;
/// Returns a reference to the option with the given name.
///
@ -73,11 +73,11 @@ public:
Iterator begin() const;
/// Supports iterating over all options.
Iterator end() const;
/// Supports iterating over all options.
private:
private:
OptionVec _options;
};

View File

@ -61,19 +61,19 @@ public:
PropertyFileConfiguration(std::istream& istr);
/// Creates an PropertyFileConfiguration and loads the configuration data
/// from the given stream, which must be in properties file format.
PropertyFileConfiguration(const std::string& path);
/// Creates an PropertyFileConfiguration and loads the configuration data
/// from the given file, which must be in properties file format.
void load(std::istream& istr);
/// Loads the configuration data from the given stream, which
/// Loads the configuration data from the given stream, which
/// must be in properties file format.
void load(const std::string& path);
/// Loads the configuration data from the given file, which
/// Loads the configuration data from the given file, which
/// must be in properties file format.
void save(std::ostream& ostr) const;
/// Writes the configuration data to the given stream.
///
@ -86,7 +86,7 @@ public:
protected:
~PropertyFileConfiguration();
private:
void parseLine(std::istream& istr);
static int readChar(std::istream& istr);

View File

@ -44,7 +44,7 @@ public:
private:
RegExpValidator();
std::string _regexp;
std::string _regexp;
};

View File

@ -81,7 +81,7 @@ class Util_API ServerApplication: public Application
///
/// An application can determine whether it is running as a service by checking
/// for the "application.runAsService" configuration property.
///
///
/// if (config().getBool("application.runAsService", false))
/// {
/// // do service specific things
@ -103,7 +103,7 @@ class Util_API ServerApplication: public Application
/// command line option. A daemon, when launched, immediately
/// forks off a background process that does the actual work. After launching
/// the background process, the foreground process exits.
///
///
/// After the initialization is complete, but before entering the main() method,
/// the current working directory for the daemon process is changed to the root
/// directory ("/"), as it is common practice for daemon processes. Therefore, be
@ -119,8 +119,8 @@ class Util_API ServerApplication: public Application
/// }
///
/// When running as a daemon, specifying the --pidfile option (e.g.,
/// --pidfile=/var/run/sample.pid) may be useful to record the process ID of
/// the daemon in a file. The PID file will be removed when the daemon process
/// --pidfile=/var/run/sample.pid) may be useful to record the process ID of
/// the daemon in a file. The PID file will be removed when the daemon process
/// terminates (but not, if it crashes).
{
public:
@ -129,7 +129,7 @@ public:
~ServerApplication();
/// Destroys the ServerApplication.
bool isInteractive() const;
/// Returns true if the application runs from the command line.
/// Returns false if the application runs as a Unix daemon
@ -138,7 +138,7 @@ public:
int run(int argc, char** argv);
/// Runs the application by performing additional initializations
/// and calling the main() method.
int run(const std::vector<std::string>& args);
/// Runs the application by performing additional initializations
/// and calling the main() method.
@ -154,10 +154,10 @@ public:
static void terminate();
/// Sends a friendly termination request to the application.
/// If the application's main thread is waiting in
/// If the application's main thread is waiting in
/// waitForTerminationRequest(), this method will return
/// and the application can shut down.
protected:
int run();
void waitForTerminationRequest();
@ -198,16 +198,16 @@ private:
void handleUnregisterService(const std::string& name, const std::string& value);
void handleDisplayName(const std::string& name, const std::string& value);
void handleDescription(const std::string& name, const std::string& value);
void handleStartup(const std::string& name, const std::string& value);
void handleStartup(const std::string& name, const std::string& value);
Action _action;
std::string _displayName;
std::string _description;
std::string _startup;
static Poco::Event _terminated;
static SERVICE_STATUS _serviceStatus;
static SERVICE_STATUS_HANDLE _serviceStatusHandle;
static SERVICE_STATUS _serviceStatus;
static SERVICE_STATUS_HANDLE _serviceStatusHandle;
#endif // _WIN32_WCE
static Poco::NamedEvent _terminate;
#endif

View File

@ -27,7 +27,7 @@ namespace Util {
class Util_API SystemConfiguration: public AbstractConfiguration
/// This class implements a Configuration interface to
/// This class implements a Configuration interface to
/// various system properties and environment variables.
///
/// The following properties are supported:
@ -35,7 +35,7 @@ class Util_API SystemConfiguration: public AbstractConfiguration
/// - system.osVersion: the operating system version
/// - system.osArchitecture: the operating system architecture
/// - system.nodeName: the node (or host) name
/// - system.nodeId: system ID, based on the Ethernet address (format "xxxxxxxxxxxx")
/// - system.nodeId: system ID, based on the Ethernet address (format "xxxxxxxxxxxx")
/// of the first Ethernet adapter found on the system.
/// - system.currentDir: the current working directory
/// - system.homeDir: the user's home directory
@ -51,9 +51,9 @@ class Util_API SystemConfiguration: public AbstractConfiguration
///
/// An attempt to set a system variable will result in an
/// InvalidAccessException being thrown.
///
/// Enumerating environment variables is not supported.
/// An attempt to call keys("system.env") will return an empty range.
///
/// Enumerating environment variables is not supported.
/// An attempt to call keys("system.env") will return an empty range.
///
/// Removing key is not supported. An attempt to remove a key results
/// in a NotImplementedException being thrown.

View File

@ -23,6 +23,7 @@
#include "Poco/RefCountedObject.h"
#include "Poco/AutoPtr.h"
#include "Poco/Timestamp.h"
#include "Poco/Mutex.h"
namespace Poco {
@ -62,6 +63,9 @@ public:
///
/// Returns 0 if the timer has never been executed.
void updateLastExecution();
/// Updates the last execution of the timer task.
protected:
~TimerTask();
/// Destroys the TimerTask.
@ -71,9 +75,8 @@ private:
TimerTask& operator = (const TimerTask&);
Poco::Timestamp _lastExecution;
bool _isCancelled;
friend class TaskNotification;
std::atomic<bool> _isCancelled;
mutable FastMutex _mutex;
};
@ -114,10 +117,18 @@ inline bool TimerTask::isCancelled() const
inline Poco::Timestamp TimerTask::lastExecution() const
{
FastMutex::ScopedLock l(_mutex);
return _lastExecution;
}
inline void TimerTask::updateLastExecution()
{
FastMutex::ScopedLock l(_mutex);
_lastExecution.update();
}
} } // namespace Poco::Util

View File

@ -30,31 +30,31 @@ template <class C>
class TimerTaskAdapter: public TimerTask
/// This class template simplifies the implementation
/// of TimerTask objects by allowing a member function
/// of an object to be called as task.
/// of an object to be called as task.
{
public:
typedef void (C::*Callback)(TimerTask&);
TimerTaskAdapter(C& object, Callback method): _pObject(&object), _method(method)
/// Creates the TimerTaskAdapter, using the given
/// Creates the TimerTaskAdapter, using the given
/// object and its member function as task target.
///
/// The member function must accept one argument,
/// a reference to a TimerTask object.
{
}
void run()
{
(_pObject->*_method)(*this);
}
protected:
~TimerTaskAdapter()
/// Destroys the TimerTaskAdapter.
{
}
private:
TimerTaskAdapter();

View File

@ -42,8 +42,8 @@ namespace Units {
namespace Internal
{
template <typename T1, typename T2> struct Convert;
struct None;
template <typename T1, typename T2> struct Convert;
struct None;
template <int Num, int Den, int Div=Num/Den, int Mod=Num%Den>
struct FixedPower;
}
@ -80,7 +80,7 @@ class Value
/// - U is the unit of the Value
///
/// This class is usually not used directly;
/// client code should use the typedef'd
/// client code should use the typedef'd
/// instantiations defined in the Values and
/// Constants namespace.
///
@ -103,25 +103,25 @@ public:
typedef V ValueType;
typedef U Unit;
Value(): _rep()
{
Value(): _rep()
{
}
explicit Value(const ValueType& v): _rep(v)
{
explicit Value(const ValueType& v): _rep(v)
{
}
template <typename OV, typename OU>
Value(const Value<OV, OU>& v):
_rep(Internal::Convert<OU, U>::fn(v.get()))
{
}
const ValueType& get() const
{
return _rep;
const ValueType& get() const
{
return _rep;
}
template <typename OV, typename OU>
Value& operator = (const Value<OV, OU>& other)
{
@ -231,30 +231,30 @@ public:
return get() >= Value(other).get();
}
Value& operator ++ ()
{
++_rep;
return *this;
Value& operator ++ ()
{
++_rep;
return *this;
}
Value operator ++ (int)
{
Value v = *this;
++_rep;
return v;
Value operator ++ (int)
{
Value v = *this;
++_rep;
return v;
}
Value& operator -- ()
{
--_rep;
return *this;
Value& operator -- ()
{
--_rep;
return *this;
}
Value operator -- (int)
{
Value v = *this;
--_rep;
return v;
Value operator -- (int)
{
Value v = *this;
--_rep;
return v;
}
private:
@ -312,7 +312,7 @@ namespace Internal
template <typename U>
struct ScalingFactor;
template <typename T1, typename T2>
template <typename T1, typename T2>
struct Convert3
/// Converts T1 to T2.
/// Stage 3 - performed after Stage 1 and Stage 2.
@ -328,7 +328,7 @@ namespace Internal
}
};
template <typename T1, typename T2>
template <typename T1, typename T2>
struct Convert2
/// Converts T1 to T2.
/// Template matches the first argument (T1),
@ -341,7 +341,7 @@ namespace Internal
}
};
template <typename T1, typename T2>
template <typename T1, typename T2>
struct Convert
/// Converts T1 to T2.
/// If you really want to implement your own conversion routine,
@ -365,7 +365,7 @@ namespace Internal
template <typename U>
static const U& fn(const U& u) { return u; }
};
template <typename T>
struct Convert3<T, T>
// Convert to same type.
@ -384,7 +384,7 @@ namespace Internal
return Convert<T, U>::fn((v * Den)/Num);
}
};
template <typename T, typename U, int Num, int Den>
struct Convert3<T, Scale<U, Num, Den> >
// Convert to a scaled Unit.
@ -433,8 +433,8 @@ namespace Internal
{
static const int num = 1;
static const int den = 1;
};
};
template <typename Term, typename U, int N, int D>
struct CountTerms<Term, Scale<U, N, D> >
// CountTerms ignores scaling factors - that is taken care of by ScalingFactor.
@ -476,7 +476,7 @@ namespace Internal
struct CheckTermsEqual
/// Counts the power of the Unit Term in Units T1 and T2.
/// Reports if they are equal, using equality of fractions.
/// Does a depth-first search of the Unit "Term",
/// Does a depth-first search of the Unit "Term",
/// or counts the terms in the default case.
{
typedef CountTerms<Term, T1> count1;
@ -526,7 +526,7 @@ namespace Internal
template <int Num, int Den, int Div, int Mod>
struct FixedPower
/// A functor that raises a Value to the power Num/Den.
/// The template is specialised for efficiency
/// The template is specialised for efficiency
/// so that we don't always have to call the std::power function.
{
template <typename T> static T Power(const T& t)
@ -678,7 +678,7 @@ namespace Internal
/// The default Unit formatting mechanism.
{
template <typename Stream>
static void fn(Stream &os)
static void fn(Stream &os)
{
os << "Units";
}
@ -691,7 +691,7 @@ struct OutputUnit
/// Functor to write Unit text to stream.
{
template <typename Stream>
static void fn(Stream &os)
static void fn(Stream &os)
{
Internal::OutputUnit2<U>::fn(os);
}
@ -707,11 +707,11 @@ namespace Internal
struct OutputUnit2< Compose<U1,U2> >
{
template <typename Stream>
static void fn(Stream &os)
{
OutputUnit<U1>::fn(os);
static void fn(Stream &os)
{
OutputUnit<U1>::fn(os);
os << '.';
OutputUnit<U2>::fn(os);
OutputUnit<U2>::fn(os);
}
};
@ -719,10 +719,10 @@ namespace Internal
struct OutputUnit2< Power<U, Num, Den > >
{
template <typename Stream>
static void fn(Stream &os)
{
static void fn(Stream &os)
{
if(Num!=Den) os << '(';
OutputUnit<U>::fn(os);
OutputUnit<U>::fn(os);
if(Num!=Den)
{
os << ')';
@ -739,10 +739,10 @@ namespace Internal
struct OutputUnit2< Translate<U, Num, Den > >
{
template <typename Stream>
static void fn(Stream &os)
{
static void fn(Stream &os)
{
os << '(';
OutputUnit<U>::fn(os);
OutputUnit<U>::fn(os);
os << '+' << Num;
if(Den!=1) os << '/' << Den;
os << ')';
@ -753,13 +753,13 @@ namespace Internal
struct OutputUnit2< Scale<U, Num, Den > >
{
template <typename Stream>
static void fn(Stream &os)
{
static void fn(Stream &os)
{
os << Den;
if(Num != 1)
os << '/' << Num;
os << '.';
OutputUnit<U>::fn(os);
OutputUnit<U>::fn(os);
}
};
} // namespace Internal
@ -893,15 +893,15 @@ namespace Units
{
public:
template <typename T>
Prefix(const T& val, double multiplier = 1, const std::string& prefix = ""):
Prefix(const T& val, double multiplier = 1, const std::string& prefix = ""):
_pHolder(new Holder<T>(val)),
_multiplier(multiplier),
_prefix(prefix)
{
{
}
double value() const
{
{
return _pHolder->get() * _multiplier;
}
@ -931,7 +931,7 @@ namespace Units
{
typedef Value<typename U::ValueType, typename U::Unit> ValueType;
Holder (const U& val): _val(ValueType(val))
Holder (const U& val): _val(ValueType(val))
{
}
@ -997,7 +997,7 @@ namespace Units
typedef Scale<minute, 1, 60> hour;
typedef Scale<hour, 1, 24> day;
typedef Scale<day, 1, 7> week;
struct month; // No fixed ratio with week
struct month; // No fixed ratio with week
typedef Scale<month, 1, 12> year;
typedef Scale<year, 1, 100> century;
typedef Scale<year, 1, 1000> millennium;
@ -1213,7 +1213,7 @@ namespace Values
DEFINE_PREFIX_CLASS (kilo, .001, "k")
DEFINE_PREFIX_CLASS (mega, 1e-6, "M")
DEFINE_PREFIX_CLASS (giga, 1e-9, "G")
DEFINE_PREFIX_CLASS (tera, 1e-12, "T")
DEFINE_PREFIX_CLASS (tera, 1e-12, "T")
DEFINE_PREFIX_CLASS (peta, 1e-15, "P")
DEFINE_PREFIX_CLASS (exa, 1e-18, "E")
DEFINE_PREFIX_CLASS (zetta, 1e-21, "Z")

View File

@ -36,7 +36,7 @@ class Util_API WinRegistryConfiguration: public AbstractConfiguration
{
public:
WinRegistryConfiguration(const std::string& rootPath, REGSAM extraSam = 0);
/// Creates the WinRegistryConfiguration.
/// Creates the WinRegistryConfiguration.
/// The rootPath must start with one of the root key names
/// like HKEY_CLASSES_ROOT, e.g. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.
/// All further keys are relative to the root path and can be

View File

@ -46,8 +46,8 @@ public:
SVC_MANUAL_START,
SVC_DISABLED
};
enum FailureActionType
enum FailureActionType
{
SVC_NONE,
SVC_REBOOT,
@ -55,7 +55,7 @@ public:
SVC_RUN_COMMAND
};
struct FailureAction
struct FailureAction
{
FailureActionType type;
int delay;
@ -83,7 +83,7 @@ public:
/// Returns the service's display name.
std::string path() const;
/// Returns the path to the service executable.
/// Returns the path to the service executable.
///
/// Throws a NotFoundException if the service has not been registered.
@ -92,7 +92,7 @@ public:
/// and the given displayName.
///
/// Throws a ExistsException if the service has already been registered.
void registerService(const std::string& path);
/// Creates a Windows service with the executable specified by path
/// and the given displayName. The service name is used as display name.
@ -100,7 +100,7 @@ public:
/// Throws a ExistsException if the service has already been registered.
void unregisterService();
/// Deletes the Windows service.
/// Deletes the Windows service.
///
/// Throws a NotFoundException if the service has not been registered.
@ -112,7 +112,7 @@ public:
bool isStopped() const;
/// Returns true if the service is currently stopped.
void start();
/// Starts the service.
/// Does nothing if the service is already running.
@ -127,7 +127,7 @@ public:
void setStartup(Startup startup);
/// Sets the startup mode for the service.
Startup getStartup() const;
/// Returns the startup mode for the service.
@ -138,10 +138,10 @@ public:
FailureActionTypeVector getFailureActions() const;
/// Returns the Failure Actions for the service.
void setDescription(const std::string& description);
/// Sets the service description in the registry.
std::string getDescription() const;
/// Returns the service description from the registry.

View File

@ -41,9 +41,9 @@ class Util_API XMLConfiguration: public AbstractConfiguration
/// from an XML document. An XPath-like syntax for property
/// names is supported to allow full access to the XML document.
/// XML namespaces are not supported. The name of the root element
/// of the XML document is not significant and ignored.
/// of the XML document is not significant and ignored.
/// Periods in tag names are not supported.
///
///
/// Given the following XML document as an example:
///
/// <config>
@ -120,7 +120,7 @@ public:
XMLConfiguration(const Poco::XML::Document* pDocument, char delim);
/// Creates the XMLConfiguration using the given XML document.
/// Uses the given delimiter char instead of the default '.'.
XMLConfiguration(const Poco::XML::Node* pNode);
/// Creates the XMLConfiguration using the given XML node.
@ -134,18 +134,18 @@ public:
void load(Poco::XML::InputSource* pInputSource, unsigned long namePoolSize);
/// Loads the XML document containing the configuration data
/// from the given InputSource. Uses the give namePoolSize (which
/// from the given InputSource. Uses the give namePoolSize (which
/// should be a suitable prime like 251, 509, 1021, 4093) for the
/// internal DOM Document's name pool.
void load(std::istream& istr);
/// Loads the XML document containing the configuration data
/// from the given stream.
void load(const std::string& path);
/// Loads the XML document containing the configuration data
/// from the given file.
void load(const Poco::XML::Document* pDocument);
/// Loads the XML document containing the configuration data
/// from the given XML document.
@ -153,11 +153,11 @@ public:
void load(const Poco::XML::Node* pNode);
/// Loads the XML document containing the configuration data
/// from the given XML node.
void loadEmpty(const std::string& rootElementName);
/// Loads an empty XML document containing only the
/// root element with the given name.
void save(const std::string& path) const;
/// Writes the XML document containing the configuration data
/// to the file given by path.

View File

@ -7,4 +7,5 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = ${vc.project.name}_vs90.vcproj
vc.project.compiler.include = ..\\..\\..\\Foundation\\include;..\\..\\..\\XML\\include;..\\..\\..\\Util\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus
vc.project.linker.dependencies.Win32 = ws2_32.lib iphlpapi.lib

View File

@ -0,0 +1,610 @@
<?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="debug_shared|Win32">
<Configuration>debug_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|x64">
<Configuration>debug_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|Win32">
<Configuration>debug_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|x64">
<Configuration>debug_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|Win32">
<Configuration>debug_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|x64">
<Configuration>debug_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|Win32">
<Configuration>release_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|x64">
<Configuration>release_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|Win32">
<Configuration>release_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|x64">
<Configuration>release_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|Win32">
<Configuration>release_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|x64">
<Configuration>release_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>SampleApp</ProjectName>
<ProjectGuid>{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}</ProjectGuid>
<RootNamespace>SampleApp</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings"/>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">SampleApp</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">SampleApp</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">SampleApp</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">SampleAppd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">SampleApp</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">SampleApp</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">SampleApp</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\SampleApp\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_mt\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_md\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_mt\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\SampleAppd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_md\SampleAppd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\SampleApp.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<None Include="SampleApp.properties"/>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\SampleApp.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets"/>
</Project>

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Configuration Files">
<UniqueIdentifier>{f7b0911f-4eb0-48d7-b6d8-8a84125229b3}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{d8ce126b-477b-4ec7-af87-52d4e2d2276e}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<None Include="SampleApp.properties">
<Filter>Configuration Files</Filter>
</None>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\SampleApp.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -41,26 +41,26 @@ public:
{
}
protected:
protected:
void initialize(Application& self)
{
loadConfiguration(); // load default configuration files, if present
Application::initialize(self);
// add your own initialization code here
}
void uninitialize()
{
// add your own uninitialization code here
Application::uninitialize();
}
void reinitialize(Application& self)
{
Application::reinitialize(self);
// add your own reinitialization code here
}
void defineOptions(OptionSet& options)
{
Application::defineOptions(options);
@ -77,7 +77,7 @@ protected:
.repeatable(true)
.argument("name=value")
.callback(OptionCallback<SampleApp>(this, &SampleApp::handleDefine)));
options.addOption(
Option("config-file", "f", "load configuration data from a file")
.required(false)
@ -92,24 +92,24 @@ protected:
.argument("value")
.binding("test.property"));
}
void handleHelp(const std::string& name, const std::string& value)
{
_helpRequested = true;
displayHelp();
stopOptionsProcessing();
}
void handleDefine(const std::string& name, const std::string& value)
{
defineProperty(value);
}
void handleConfig(const std::string& name, const std::string& value)
{
loadConfiguration(value);
}
void displayHelp()
{
HelpFormatter helpFormatter(options());
@ -118,7 +118,7 @@ protected:
helpFormatter.setHeader("A sample application that demonstrates some of the features of the Poco::Util::Application class.");
helpFormatter.format(std::cout);
}
void defineProperty(const std::string& def)
{
std::string name;
@ -154,7 +154,7 @@ protected:
}
return Application::EXIT_OK;
}
void printProperties(const std::string& base)
{
AbstractConfiguration::Keys keys;
@ -181,7 +181,7 @@ protected:
}
}
}
private:
bool _helpRequested;
};

View File

@ -7,4 +7,5 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = ${vc.project.name}_vs90.vcproj
vc.project.compiler.include = ..\\..\\..\\Foundation\\include;..\\..\\..\\XML\\include;..\\..\\..\\Util\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus
vc.project.linker.dependencies.Win32 = ws2_32.lib iphlpapi.lib

View File

@ -0,0 +1,607 @@
<?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="debug_shared|Win32">
<Configuration>debug_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|x64">
<Configuration>debug_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|Win32">
<Configuration>debug_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|x64">
<Configuration>debug_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|Win32">
<Configuration>debug_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|x64">
<Configuration>debug_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|Win32">
<Configuration>release_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|x64">
<Configuration>release_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|Win32">
<Configuration>release_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|x64">
<Configuration>release_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|Win32">
<Configuration>release_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|x64">
<Configuration>release_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>SampleServer</ProjectName>
<ProjectGuid>{F475C5DD-0558-37AF-870B-666DE931B7BA}</ProjectGuid>
<RootNamespace>SampleServer</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings"/>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">SampleServer</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">SampleServer</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">SampleServer</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">SampleServerd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">SampleServer</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">SampleServer</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">SampleServer</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\SampleServer\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_mt\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_md\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_mt\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\SampleServerd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_md\SampleServerd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\SampleServer.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\SampleServer.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets"/>
</Project>

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Header Files">
<UniqueIdentifier>{a6e76470-aec2-4a5f-a7fe-9a81cb375ceb}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{d8a834f5-9820-48c0-b66d-ae01d8465668}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\SampleServer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -37,7 +37,7 @@ public:
SampleTask(): Task("SampleTask")
{
}
void runTask()
{
Application& app = Application::instance();
@ -55,7 +55,7 @@ public:
SampleServer(): _helpRequested(false)
{
}
~SampleServer()
{
}
@ -67,7 +67,7 @@ protected:
ServerApplication::initialize(self);
logger().information("starting up");
}
void uninitialize()
{
logger().information("shutting down");
@ -77,7 +77,7 @@ protected:
void defineOptions(OptionSet& options)
{
ServerApplication::defineOptions(options);
options.addOption(
Option("help", "h", "display help information on command line arguments")
.required(false)
@ -113,7 +113,7 @@ protected:
}
return Application::EXIT_OK;
}
private:
bool _helpRequested;
};

View File

@ -10,6 +10,6 @@ objects = Units
target = Units
target_version = 1
target_libs =
target_libs =
include $(POCO_BASE)/build/rules/exec

View File

@ -7,3 +7,4 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = ${vc.project.name}_vs90.vcproj
vc.project.compiler.include = ..\\..\\..\\Foundation\\include;..\\..\\..\\Util\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus

View File

@ -0,0 +1,603 @@
<?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="debug_shared|Win32">
<Configuration>debug_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|x64">
<Configuration>debug_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|Win32">
<Configuration>debug_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|x64">
<Configuration>debug_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|Win32">
<Configuration>debug_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|x64">
<Configuration>debug_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|Win32">
<Configuration>release_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|x64">
<Configuration>release_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|Win32">
<Configuration>release_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|x64">
<Configuration>release_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|Win32">
<Configuration>release_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|x64">
<Configuration>release_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>Units</ProjectName>
<ProjectGuid>{A6800637-61D5-39A3-86AA-E180C73D3120}</ProjectGuid>
<RootNamespace>Units</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings"/>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">Units</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">Units</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">Units</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">Unitsd</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">Units</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">Units</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">Units</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\Units\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>bin\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>bin\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_mt\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_md\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>bin64\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<OutputFile>bin64\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_mt\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\Unitsd.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_md\Unitsd.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\Units.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\Units.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets"/>
</Project>

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Header Files">
<UniqueIdentifier>{cc5ef59d-1274-4692-8a5e-91583358140b}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{6899d313-fd65-4835-9f8e-c9caa694424a}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\Units.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -48,46 +48,46 @@ int main()
m l = cm(42);
std::cout << cm(42) << " == " << l << " == " << milli(l) << std::endl;
std::cout << "Area of circle with radius " << l <<
std::cout << "Area of circle with radius " << l <<
" is " << mm2(square(l) * pi) << std::endl;
SpecificWeight sw(9.81); // water
std::cout << "Volume of a water cube with side size " << m(0.1) <<
" is " << liter(cube(m(0.1))) <<
std::cout << "Volume of a water cube with side size " << m(0.1) <<
" is " << liter(cube(m(0.1))) <<
" and weighs " << N(sw * cube(m(.1))) << std::endl;
m radius_equator(6378135);
m radius_pole(6356750);
m3 vol((pi * square(radius_equator) * radius_pole) * 4/3);
std::cout << "Volume of Earth is " << vol
std::cout << "Volume of Earth is " << vol
<< " (" << yotta(liter(vol)) << ")" << std::endl;
std::cout << "It takes " << minute(AU/c) << " for a Sun beam to reach Earth." << std::endl;
std::cout << std::endl << m(1) << " is:" << std::endl;
std::cout << "-------------" << std::endl;
std::cout << std::endl << m(1) << " is:" << std::endl;
std::cout << "-------------" << std::endl;
std::cout << deca(m(1)) << std::endl;
std::cout << deca(m(1)) << std::endl;
std::cout << hecto(m(1)) << std::endl;
std::cout << kilo(m(1)) << std::endl;
std::cout << mega(m(1)) << std::endl;
std::cout << giga(m(1)) << std::endl;
std::cout << tera(m(1)) << std::endl;
std::cout << peta(m(1)) << std::endl;
std::cout << exa(m(1)) << std::endl;
std::cout << kilo(m(1)) << std::endl;
std::cout << mega(m(1)) << std::endl;
std::cout << giga(m(1)) << std::endl;
std::cout << tera(m(1)) << std::endl;
std::cout << peta(m(1)) << std::endl;
std::cout << exa(m(1)) << std::endl;
std::cout << zetta(m(1)) << std::endl;
std::cout << yotta(m(1)) << std::endl;
std::cout << deci(m(1)) << std::endl;
std::cout << deci(m(1)) << std::endl;
std::cout << centi(m(1)) << std::endl;
std::cout << milli(m(1)) << std::endl;
std::cout << micro(m(1)) << std::endl;
std::cout << nano(m(1)) << std::endl;
std::cout << pico(m(1)) << std::endl;
std::cout << nano(m(1)) << std::endl;
std::cout << pico(m(1)) << std::endl;
std::cout << femto(m(1)) << std::endl;
std::cout << atto(m(1)) << std::endl;
std::cout << atto(m(1)) << std::endl;
std::cout << zepto(m(1)) << std::endl;
std::cout << yocto(m(1)) << std::endl;

View File

@ -7,4 +7,5 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = ${vc.project.name}_vs90.vcproj
vc.project.compiler.include = ..\\..\\..\\Foundation\\include;..\\..\\..\\XML\\include;..\\..\\..\\Util\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus
vc.project.linker.dependencies.Win32 = ws2_32.lib iphlpapi.lib

View File

@ -0,0 +1,607 @@
<?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="debug_shared|Win32">
<Configuration>debug_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_shared|x64">
<Configuration>debug_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|Win32">
<Configuration>debug_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_md|x64">
<Configuration>debug_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|Win32">
<Configuration>debug_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="debug_static_mt|x64">
<Configuration>debug_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|Win32">
<Configuration>release_shared</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_shared|x64">
<Configuration>release_shared</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|Win32">
<Configuration>release_static_md</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_md|x64">
<Configuration>release_static_md</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|Win32">
<Configuration>release_static_mt</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="release_static_mt|x64">
<Configuration>release_static_mt</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>pkill</ProjectName>
<ProjectGuid>{63EDD785-29E1-3073-87EB-3CE788A4A1DE}</ProjectGuid>
<RootNamespace>pkill</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings"/>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'" Label="PropertySheets">
<Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">pkill</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">pkill</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">pkill</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">pkilld</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">pkill</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">pkill</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">pkill</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<OutDir>bin\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<OutDir>bin\static_mt\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<OutDir>bin\static_md\</OutDir>
<IntDir>obj\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<OutDir>bin64\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<OutDir>bin64\static_mt\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<OutDir>bin64\static_md\</OutDir>
<IntDir>obj64\pkill\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_mt\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_mt\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin\static_md\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin\static_md\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_shared|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_shared|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_mt|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_mt\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_mt|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_mt\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug_static_md|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<BufferSecurityCheck>true</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\pkilld.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>bin64\static_md\pkilld.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release_static_md|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>.\include;..\..\..\Foundation\include;..\..\..\XML\include;..\..\..\Util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<ForceConformanceInForLoopScope>true</ForceConformanceInForLoopScope>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader/>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat/>
<CompileAs>Default</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>iphlpapi.lib;winmm.lib;ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>bin64\static_md\pkill.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\pkill.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets"/>
</Project>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{eabac5f2-924a-4f69-8e1f-92d2e32ee27c}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\pkill.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -29,13 +29,13 @@ using Poco::Util::OptionCallback;
class ProcessKillerApp: public Application
{
public:
ProcessKillerApp():
ProcessKillerApp():
_helpRequested(false),
_friendly(false)
{
}
protected:
protected:
void defineOptions(OptionSet& options)
{
Application::defineOptions(options);
@ -52,18 +52,18 @@ protected:
.repeatable(false)
.callback(OptionCallback<ProcessKillerApp>(this, &ProcessKillerApp::handleFriendly)));
}
void handleHelp(const std::string& name, const std::string& value)
{
_helpRequested = true;
stopOptionsProcessing();
}
void handleFriendly(const std::string& name, const std::string& value)
{
_friendly = true;
}
void displayHelp()
{
HelpFormatter helpFormatter(options());
@ -73,7 +73,7 @@ protected:
helpFormatter.setFooter("Note that the friendly option only works with applications using Poco::Util::ServerApplication::waitForTerminationRequest().");
helpFormatter.format(std::cout);
}
int main(const std::vector<std::string>& args)
{
if (_helpRequested || args.empty())
@ -93,7 +93,7 @@ protected:
}
return Application::EXIT_OK;
}
private:
bool _helpRequested;
bool _friendly;

View File

@ -0,0 +1,175 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pkill", "pkill\pkill_vs170.vcxproj", "{63EDD785-29E1-3073-87EB-3CE788A4A1DE}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SampleApp", "SampleApp\SampleApp_vs170.vcxproj", "{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SampleServer", "SampleServer\SampleServer_vs170.vcxproj", "{F475C5DD-0558-37AF-870B-666DE931B7BA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Units", "Units\Units_vs170.vcxproj", "{A6800637-61D5-39A3-86AA-E180C73D3120}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
debug_shared|Win32 = debug_shared|Win32
release_shared|Win32 = release_shared|Win32
debug_static_mt|Win32 = debug_static_mt|Win32
release_static_mt|Win32 = release_static_mt|Win32
debug_static_md|Win32 = debug_static_md|Win32
release_static_md|Win32 = release_static_md|Win32
debug_shared|x64 = debug_shared|x64
release_shared|x64 = release_shared|x64
debug_static_mt|x64 = debug_static_mt|x64
release_static_mt|x64 = release_static_mt|x64
debug_static_md|x64 = debug_static_md|x64
release_static_md|x64 = release_static_md|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|Win32.Build.0 = debug_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|Win32.ActiveCfg = release_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|Win32.Build.0 = release_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|Win32.Deploy.0 = release_shared|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|Win32.Build.0 = release_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|x64.ActiveCfg = debug_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|x64.Build.0 = debug_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_shared|x64.Deploy.0 = debug_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|x64.ActiveCfg = release_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|x64.Build.0 = release_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_shared|x64.Deploy.0 = release_shared|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|x64.Build.0 = release_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|x64.Build.0 = debug_static_md|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|x64.ActiveCfg = release_static_md|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|x64.Build.0 = release_static_md|x64
{63EDD785-29E1-3073-87EB-3CE788A4A1DE}.release_static_md|x64.Deploy.0 = release_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|Win32.Build.0 = debug_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|Win32.ActiveCfg = release_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|Win32.Build.0 = release_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|Win32.Deploy.0 = release_shared|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|Win32.Build.0 = release_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|x64.ActiveCfg = debug_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|x64.Build.0 = debug_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_shared|x64.Deploy.0 = debug_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|x64.ActiveCfg = release_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|x64.Build.0 = release_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_shared|x64.Deploy.0 = release_shared|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|x64.Build.0 = release_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|x64.Build.0 = debug_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|x64.ActiveCfg = release_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|x64.Build.0 = release_static_md|x64
{C3F12C11-469F-3FB6-8C95-8638F78FF7C0}.release_static_md|x64.Deploy.0 = release_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|Win32.Build.0 = debug_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|Win32.ActiveCfg = release_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|Win32.Build.0 = release_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|Win32.Deploy.0 = release_shared|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|Win32.Build.0 = release_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|x64.ActiveCfg = debug_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|x64.Build.0 = debug_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_shared|x64.Deploy.0 = debug_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|x64.ActiveCfg = release_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|x64.Build.0 = release_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_shared|x64.Deploy.0 = release_shared|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|x64.Build.0 = release_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|x64.Build.0 = debug_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|x64.ActiveCfg = release_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|x64.Build.0 = release_static_md|x64
{F475C5DD-0558-37AF-870B-666DE931B7BA}.release_static_md|x64.Deploy.0 = release_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|Win32.Build.0 = debug_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|Win32.ActiveCfg = release_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|Win32.Build.0 = release_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|Win32.Deploy.0 = release_shared|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|Win32.Build.0 = release_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|x64.ActiveCfg = debug_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|x64.Build.0 = debug_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_shared|x64.Deploy.0 = debug_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|x64.ActiveCfg = release_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|x64.Build.0 = release_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_shared|x64.Deploy.0 = release_shared|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|x64.Build.0 = release_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|x64.Build.0 = debug_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|x64.ActiveCfg = release_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|x64.Build.0 = release_static_md|x64
{A6800637-61D5-39A3-86AA-E180C73D3120}.release_static_md|x64.Deploy.0 = release_static_md|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -14,6 +14,7 @@
#include "Poco/Util/AbstractConfiguration.h"
#include "Poco/Util/ConfigurationView.h"
#include "Poco/Util/LocalConfigurationView.h"
#include "Poco/Exception.h"
#include "Poco/NumberParser.h"
#include "Poco/NumberFormatter.h"
@ -33,7 +34,7 @@ namespace Poco {
namespace Util {
AbstractConfiguration::AbstractConfiguration():
AbstractConfiguration::AbstractConfiguration():
_depth(0),
_eventsEnabled(true)
{
@ -65,7 +66,7 @@ bool AbstractConfiguration::has(const std::string& key) const
return hasProperty(key);
}
std::string AbstractConfiguration::getString(const std::string& key) const
{
Mutex::ScopedLock lock(_mutex);
@ -77,7 +78,7 @@ std::string AbstractConfiguration::getString(const std::string& key) const
throw NotFoundException(key);
}
std::string AbstractConfiguration::getString(const std::string& key, const std::string& defaultValue) const
{
Mutex::ScopedLock lock(_mutex);
@ -101,10 +102,10 @@ std::string AbstractConfiguration::getRawString(const std::string& key) const
throw NotFoundException(key);
}
std::string AbstractConfiguration::getRawString(const std::string& key, const std::string& defaultValue) const
{
Mutex::ScopedLock lock(_mutex);
std::string value;
@ -114,7 +115,7 @@ std::string AbstractConfiguration::getRawString(const std::string& key, const st
return defaultValue;
}
int AbstractConfiguration::getInt(const std::string& key) const
{
Mutex::ScopedLock lock(_mutex);
@ -126,7 +127,7 @@ int AbstractConfiguration::getInt(const std::string& key) const
throw NotFoundException(key);
}
int AbstractConfiguration::getInt(const std::string& key, int defaultValue) const
{
Mutex::ScopedLock lock(_mutex);
@ -228,7 +229,7 @@ double AbstractConfiguration::getDouble(const std::string& key) const
throw NotFoundException(key);
}
double AbstractConfiguration::getDouble(const std::string& key, double defaultValue) const
{
Mutex::ScopedLock lock(_mutex);
@ -270,13 +271,13 @@ void AbstractConfiguration::setString(const std::string& key, const std::string&
setRawWithEvent(key, value);
}
void AbstractConfiguration::setInt(const std::string& key, int value)
{
setRawWithEvent(key, NumberFormatter::format(value));
}
void AbstractConfiguration::setUInt(const std::string& key, unsigned int value)
{
setRawWithEvent(key, NumberFormatter::format(value));
@ -348,6 +349,18 @@ AbstractConfiguration::Ptr AbstractConfiguration::createView(const std::string&
}
const AbstractConfiguration::Ptr AbstractConfiguration::createLocalView(const std::string& prefix) const
{
return new LocalConfigurationView(prefix, AbstractConfiguration::Ptr(const_cast<AbstractConfiguration*>(this), true));
}
AbstractConfiguration::Ptr AbstractConfiguration::createLocalView(const std::string& prefix)
{
return new LocalConfigurationView(prefix, AbstractConfiguration::Ptr(this, true));
}
namespace
{
class AutoCounter
@ -357,12 +370,12 @@ namespace
{
++_count;
}
~AutoCounter()
{
--_count;
}
private:
int& _count;
};
@ -384,7 +397,7 @@ void AbstractConfiguration::remove(const std::string& key)
propertyRemoving(this, key);
}
{
Mutex::ScopedLock lock(_mutex);
removeRaw(key);
}
@ -400,7 +413,7 @@ void AbstractConfiguration::enableEvents(bool enable)
_eventsEnabled = enable;
}
bool AbstractConfiguration::eventsEnabled() const
{
return _eventsEnabled;
@ -510,7 +523,7 @@ bool AbstractConfiguration::parseBool(const std::string& value)
return false;
else if (icompare(value, "off") == 0)
return false;
else
else
throw SyntaxException("Cannot convert to boolean", value);
}

View File

@ -42,6 +42,10 @@
#include "Poco/SignalHandler.h"
#include <stdio.h>
#include <sys/ioctl.h>
#if POCO_OS == POCO_OS_SOLARIS
#include <stropts.h>
#include <termios.h>
#endif
#endif
#include "Poco/UnicodeConverter.h"

View File

@ -46,7 +46,7 @@ bool ConfigurationMapper::getRaw(const std::string& key, std::string& value) con
void ConfigurationMapper::setRaw(const std::string& key, const std::string& value)
{
std::string translatedKey = translateKey(key);
_pConfig->setRaw(translatedKey, value);
_pConfig->setRaw(translatedKey, value);
}

View File

@ -42,7 +42,7 @@ bool ConfigurationView::getRaw(const std::string& key, std::string& value) const
void ConfigurationView::setRaw(const std::string& key, const std::string& value)
{
std::string translatedKey = translateKey(key);
_pConfig->setRaw(translatedKey, value);
_pConfig->setRaw(translatedKey, value);
}

View File

@ -119,7 +119,7 @@ Path FilesystemConfiguration::keyToPath(const std::string& key) const
for (const auto& tok: tokenizer)
{
result.pushDirectory(tok);
}
}
return result;
}

View File

@ -25,7 +25,7 @@ const int HelpFormatter::TAB_WIDTH = 4;
const int HelpFormatter::LINE_WIDTH = 78;
HelpFormatter::HelpFormatter(const OptionSet& options):
HelpFormatter::HelpFormatter(const OptionSet& options):
_options(options),
_width(LINE_WIDTH),
_indent(0),
@ -94,7 +94,7 @@ void HelpFormatter::format(std::ostream& ostr) const
void HelpFormatter::setWidth(int width)
{
poco_assert (width > 0);
_width = width;
}
@ -102,7 +102,7 @@ void HelpFormatter::setWidth(int width)
void HelpFormatter::setIndent(int indent)
{
poco_assert (indent >= 0 && indent < _width);
_indent = indent;
}
@ -240,7 +240,7 @@ void HelpFormatter::formatText(std::ostream& ostr, const std::string& text, int
clearWord(ostr, pos, word, indent);
if (pos < _width) { ostr << ' '; ++pos; }
}
else
else
{
if (word.length() == maxWordLen)
{

View File

@ -45,7 +45,7 @@ IniFileConfiguration::IniFileConfiguration(std::istream& istr)
load(istr);
}
IniFileConfiguration::IniFileConfiguration(const std::string& path)
{
load(path);
@ -66,7 +66,7 @@ void IniFileConfiguration::load(std::istream& istr)
parseLine(istr);
}
}
void IniFileConfiguration::load(const std::string& path)
{
@ -148,7 +148,7 @@ bool IniFileConfiguration::ICompare::operator () (const std::string& s1, const s
void IniFileConfiguration::parseLine(std::istream& istr)
{
static const int eof = std::char_traits<char>::eof();
static const int eof = std::char_traits<char>::eof();
int c = istr.get();
while (c != eof && Poco::Ascii::isSpace(c)) c = istr.get();

View File

@ -70,7 +70,7 @@ void JSONConfiguration::load(std::istream& istr)
JSON::Parser parser;
parser.parse(istr);
DynamicAny result = parser.result();
if ( result.type() == typeid(JSON::Object::Ptr) )
if (result.type() == typeid(JSON::Object::Ptr))
{
_object = result.extract<JSON::Object::Ptr>();
}
@ -89,7 +89,7 @@ bool JSONConfiguration::getRaw(const std::string & key, std::string & value) con
{
JSON::Query query(_object);
Poco::DynamicAny result = query.find(key);
if ( ! result.isEmpty() )
if (!result.isEmpty())
{
value = result.convert<std::string>();
return true;
@ -106,9 +106,9 @@ void JSONConfiguration::getIndexes(std::string& name, std::vector<int>& indexes)
int firstOffset = -1;
int offset = 0;
RegularExpression regex("\\[([0-9]+)\\]");
while(regex.match(name, offset, matches) > 0 )
while(regex.match(name, offset, matches) > 0)
{
if ( firstOffset == -1 )
if (firstOffset == -1)
{
firstOffset = static_cast<int>(matches[0].offset);
}
@ -117,7 +117,7 @@ void JSONConfiguration::getIndexes(std::string& name, std::vector<int>& indexes)
offset = static_cast<int>(matches[0].offset + matches[0].length);
}
if ( firstOffset != -1 )
if (firstOffset != -1)
{
name = name.substr(0, firstOffset);
}
@ -139,9 +139,9 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
DynamicAny result = currentObject->get(name);
if ( result.isEmpty() ) // Not found
if (result.isEmpty()) // Not found
{
if ( indexes.empty() ) // We want an object, create it
if (indexes.empty()) // We want an object, create it
{
JSON::Object::Ptr newObject = new JSON::Object();
currentObject->set(name, newObject);
@ -155,12 +155,12 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
for(std::vector<int>::iterator it = indexes.begin(); it != indexes.end(); ++it)
{
newArray = new JSON::Array();
if ( topArray.isNull() )
if (topArray.isNull())
{
topArray = newArray;
}
if ( ! parentArray.isNull() )
if (! parentArray.isNull())
{
parentArray->add(newArray);
}
@ -181,9 +181,9 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
}
else // We have a value
{
if ( indexes.empty() ) // We want an object
if (indexes.empty()) // We want an object
{
if ( result.type() == typeid(JSON::Object::Ptr) )
if (result.type() == typeid(JSON::Object::Ptr))
{
currentObject = result.extract<JSON::Object::Ptr>();
}
@ -194,7 +194,7 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
}
else
{
if ( result.type() == typeid(JSON::Array::Ptr) )
if (result.type() == typeid(JSON::Array::Ptr))
{
JSON::Array::Ptr arr = result.extract<JSON::Array::Ptr>();
@ -202,7 +202,7 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
{
JSON::Array::Ptr currentArray = arr;
arr = arr->getArray(*it);
if ( arr.isNull() )
if (arr.isNull())
{
arr = new JSON::Array();
currentArray->add(arr);
@ -210,7 +210,7 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
}
result = arr->get(*indexes.rbegin());
if ( result.isEmpty() ) // Index doesn't exist
if (result.isEmpty()) // Index doesn't exist
{
JSON::Object::Ptr newObject = new JSON::Object();
arr->add(newObject);
@ -218,7 +218,7 @@ JSON::Object::Ptr JSONConfiguration::findStart(const std::string& key, std::stri
}
else // Index is available
{
if ( result.type() == typeid(JSON::Object::Ptr) )
if (result.type() == typeid(JSON::Object::Ptr))
{
currentObject = result.extract<JSON::Object::Ptr>();
}
@ -243,34 +243,34 @@ void JSONConfiguration::setValue(const std::string& key, const Poco::DynamicAny&
{
std::string sValue;
value.convert<std::string>(sValue);
KeyValue kv(key, sValue);
if (eventsEnabled())
{
propertyChanging(this, kv);
}
std::string lastPart;
JSON::Object::Ptr parentObject = findStart(key, lastPart);
std::vector<int> indexes;
getIndexes(lastPart, indexes);
if ( indexes.empty() ) // No Array
if (indexes.empty()) // No Array
{
parentObject->set(lastPart, value);
}
else
{
DynamicAny result = parentObject->get(lastPart);
if ( result.isEmpty() )
if (result.isEmpty())
{
result = JSON::Array::Ptr(new JSON::Array());
parentObject->set(lastPart, result);
}
else if ( result.type() != typeid(JSON::Array::Ptr) )
else if (result.type() != typeid(JSON::Array::Ptr))
{
throw SyntaxException("Expected a JSON array");
}
@ -279,7 +279,7 @@ void JSONConfiguration::setValue(const std::string& key, const Poco::DynamicAny&
for(std::vector<int>::iterator it = indexes.begin(); it != indexes.end() - 1; ++it)
{
JSON::Array::Ptr nextArray = arr->getArray(*it);
if ( nextArray.isNull() )
if (nextArray.isNull())
{
for(int i = static_cast<int>(arr->size()); i <= *it; ++i)
{
@ -335,7 +335,7 @@ void JSONConfiguration::enumerate(const std::string& key, Keys& range) const
{
JSON::Query query(_object);
Poco::DynamicAny result = query.find(key);
if ( result.type() == typeid(JSON::Object::Ptr) )
if (result.type() == typeid(JSON::Object::Ptr))
{
JSON::Object::Ptr object = result.extract<JSON::Object::Ptr>();
object->getNames(range);
@ -352,13 +352,13 @@ void JSONConfiguration::save(std::ostream& ostr, unsigned int indent) const
void JSONConfiguration::removeRaw(const std::string& key)
{
std::string lastPart;
JSON::Object::Ptr parentObject = findStart(key, lastPart);
std::vector<int> indexes;
getIndexes(lastPart, indexes);
if ( indexes.empty() ) // No Array
if (indexes.empty()) // No Array
{
parentObject->remove(lastPart);
}

View File

@ -78,7 +78,7 @@ void LayeredConfiguration::add(AbstractConfiguration::Ptr pConfig, const std::st
item.priority = priority;
item.writeable = writeable;
item.label = label;
ConfigList::iterator it = _configs.begin();
while (it != _configs.end() && it->priority < priority) ++it;
_configs.insert(it, item);
@ -124,7 +124,7 @@ void LayeredConfiguration::setRaw(const std::string& key, const std::string& val
{
if (conf.writeable)
{
conf.pConfig->setRaw(key, value);
conf.pConfig->setRaw(key, value);
return;
}
}

View File

@ -0,0 +1,70 @@
//
// LocalConfigurationView.cpp
//
// Library: Util
// Package: Configuration
// Module: LocalConfigurationView
//
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
#include "Poco/Util/LocalConfigurationView.h"
namespace Poco {
namespace Util {
LocalConfigurationView::LocalConfigurationView(const std::string& prefix, AbstractConfiguration::Ptr pConfig) :
_prefix(prefix), _pConfig(pConfig)
{
poco_check_ptr(pConfig);
}
LocalConfigurationView::~LocalConfigurationView()
{
}
bool LocalConfigurationView::getRaw(const std::string& key, std::string& value) const
{
std::string translatedKey = translateKey(key);
return _pConfig->getRaw(translatedKey, value);
}
void LocalConfigurationView::setRaw(const std::string& key, const std::string& value)
{
std::string translatedKey = translateKey(key);
_pConfig->setRaw(translatedKey, value);
}
void LocalConfigurationView::enumerate(const std::string& key, Keys& range) const
{
std::string translatedKey = translateKey(key);
_pConfig->enumerate(translatedKey, range);
}
void LocalConfigurationView::removeRaw(const std::string& key)
{
std::string translatedKey = translateKey(key);
_pConfig->remove(translatedKey);
}
std::string LocalConfigurationView::translateKey(const std::string& key) const
{
std::string result = _prefix;
if (!result.empty() && !key.empty() && key[0] != '[') result += '.';
result += key;
return result;
}
}} // namespace Poco::Util

View File

@ -102,7 +102,7 @@ void LoggingConfigurator::configureLoggers(AbstractConfiguration::Ptr pConfig)
AbstractConfiguration::Keys loggers;
pConfig->keys(loggers);
// use a map to sort loggers by their name, ensuring initialization in correct order (parents before children)
LoggerMap loggerMap;
LoggerMap loggerMap;
for (const auto& l: loggers)
{
AutoPtr<AbstractConfiguration> pLoggerConfig(pConfig->createView(l));
@ -123,7 +123,7 @@ Formatter::Ptr LoggingConfigurator::createFormatter(AbstractConfiguration::Ptr p
for (const auto& p: props)
{
if (p != "class")
pFormatter->setProperty(p, pConfig->getString(p));
pFormatter->setProperty(p, pConfig->getString(p));
}
return pFormatter;
}
@ -147,7 +147,7 @@ Channel::Ptr LoggingConfigurator::createChannel(AbstractConfiguration::Ptr pConf
AutoPtr<FormattingChannel> pFormattingChannel(new FormattingChannel(0, pChannel));
if (pConfig->hasProperty("formatter.class"))
{
AutoPtr<AbstractConfiguration> pFormatterConfig(pConfig->createView(p));
AutoPtr<AbstractConfiguration> pFormatterConfig(pConfig->createView(p));
AutoPtr<Formatter> pFormatter(createFormatter(pFormatterConfig));
pFormattingChannel->setFormatter(pFormatter);
}
@ -182,7 +182,7 @@ void LoggingConfigurator::configureLogger(AbstractConfiguration::Ptr pConfig)
{
if (p == "channel" && pConfig->hasProperty("channel.class"))
{
AutoPtr<AbstractConfiguration> pChannelConfig(pConfig->createView(p));
AutoPtr<AbstractConfiguration> pChannelConfig(pConfig->createView(p));
AutoPtr<Channel> pChannel(createChannel(pChannelConfig));
configureChannel(pChannel, pChannelConfig);
Logger::setChannel(logger.name(), pChannel);

View File

@ -40,7 +40,7 @@ const char* LoggingSubsystem::name() const
return "Logging Subsystem";
}
void LoggingSubsystem::initialize(Application& app)
{
LoggingConfigurator configurator;

View File

@ -27,13 +27,12 @@ namespace Poco {
namespace Util {
Option::Option():
_required(false),
_repeatable(false),
Option::Option():
_required(false),
_repeatable(false),
_argRequired(false),
_pValidator(0),
_pCallback(0),
_pConfig(0)
_pCallback(0)
{
}
@ -54,7 +53,6 @@ Option::Option(const Option& option):
{
if (_pValidator) _pValidator->duplicate();
if (_pCallback) _pCallback = _pCallback->clone();
if (_pConfig) _pConfig->duplicate();
}
@ -65,8 +63,7 @@ Option::Option(const std::string& fullName, const std::string& shortName):
_repeatable(false),
_argRequired(false),
_pValidator(0),
_pCallback(0),
_pConfig(0)
_pCallback(0)
{
}
@ -79,8 +76,7 @@ Option::Option(const std::string& fullName, const std::string& shortName, const
_repeatable(false),
_argRequired(false),
_pValidator(0),
_pCallback(0),
_pConfig(0)
_pCallback(0)
{
}
@ -94,8 +90,7 @@ Option::Option(const std::string& fullName, const std::string& shortName, const
_argName(argName),
_argRequired(argRequired),
_pValidator(0),
_pCallback(0),
_pConfig(0)
_pCallback(0)
{
}
@ -103,7 +98,6 @@ Option::Option(const std::string& fullName, const std::string& shortName, const
Option::~Option()
{
if (_pValidator) _pValidator->release();
if (_pConfig) _pConfig->release();
delete _pCallback;
}
@ -119,7 +113,7 @@ Option& Option::operator = (const Option& option)
}
void Option::swap(Option& option)
void Option::swap(Option& option) noexcept
{
std::swap(_shortName, option._shortName);
std::swap(_fullName, option._fullName);
@ -135,7 +129,7 @@ void Option::swap(Option& option)
std::swap(_pConfig, option._pConfig);
}
Option& Option::shortName(const std::string& name)
{
_shortName = name;
@ -149,14 +143,14 @@ Option& Option::fullName(const std::string& name)
return *this;
}
Option& Option::description(const std::string& text)
{
_description = text;
return *this;
}
Option& Option::required(bool flag)
{
_required = flag;
@ -170,7 +164,7 @@ Option& Option::repeatable(bool flag)
return *this;
}
Option& Option::argument(const std::string& name, bool required)
{
_argName = name;
@ -178,7 +172,7 @@ Option& Option::argument(const std::string& name, bool required)
return *this;
}
Option& Option::noArgument()
{
_argName.clear();
@ -200,12 +194,10 @@ Option& Option::binding(const std::string& propertyName)
}
Option& Option::binding(const std::string& propertyName, AbstractConfiguration* pConfig)
Option& Option::binding(const std::string& propertyName, AbstractConfiguration::Ptr pConfig)
{
_binding = propertyName;
if (_pConfig) _pConfig->release();
_pConfig = pConfig;
if (_pConfig) _pConfig->duplicate();
return *this;
}
@ -227,7 +219,7 @@ Option& Option::validator(Validator* pValidator)
bool Option::matchesShort(const std::string& option) const
{
return option.length() > 0
return option.length() > 0
&& !_shortName.empty() && option.compare(0, _shortName.length(), _shortName) == 0;
}
@ -245,7 +237,7 @@ bool Option::matchesPartial(const std::string& option) const
{
std::string::size_type pos = option.find_first_of(":=");
std::string::size_type len = pos == std::string::npos ? option.length() : pos;
return option.length() > 0
return option.length() > 0
&& icompare(option, 0, len, _fullName, 0, len) == 0;
}

View File

@ -22,7 +22,7 @@ namespace Poco {
namespace Util {
OptionProcessor::OptionProcessor(const OptionSet& options):
OptionProcessor::OptionProcessor(const OptionSet& options):
_options(options),
_unixStyle(true),
_ignore(false)

View File

@ -78,7 +78,7 @@ bool OptionSet::hasOption(const std::string& name, bool matchShort) const
return found;
}
const Option& OptionSet::getOption(const std::string& name, bool matchShort) const
{
const Option* pOption = 0;

View File

@ -39,7 +39,7 @@ PropertyFileConfiguration::PropertyFileConfiguration(std::istream& istr)
load(istr);
}
PropertyFileConfiguration::PropertyFileConfiguration(const std::string& path)
{
load(path);
@ -50,7 +50,7 @@ PropertyFileConfiguration::~PropertyFileConfiguration()
{
}
void PropertyFileConfiguration::load(std::istream& istr)
{
clear();
@ -60,7 +60,7 @@ void PropertyFileConfiguration::load(std::istream& istr)
}
}
void PropertyFileConfiguration::load(const std::string& path)
{
Poco::FileInputStream istr(path);
@ -125,7 +125,7 @@ void PropertyFileConfiguration::save(const std::string& path) const
void PropertyFileConfiguration::parseLine(std::istream& istr)
{
static const int eof = std::char_traits<char>::eof();
static const int eof = std::char_traits<char>::eof();
int c = istr.get();
while (c != eof && Poco::Ascii::isSpace(c)) c = istr.get();

View File

@ -93,6 +93,11 @@ public:
_finished.set();
return false;
}
Poco::AutoPtr<CancelNotification> pCnf = pNf.cast<CancelNotification>();
if (pCnf)
{
pCnf->_finished.set();
}
pNf = static_cast<TimerNotification*>(queue().dequeueNotification());
}
@ -135,7 +140,7 @@ public:
{
try
{
_pTask->_lastExecution.update();
_pTask->updateLastExecution();
_pTask->run();
}
catch (Exception& exc)

View File

@ -102,7 +102,7 @@ void WinService::registerService(const std::string& path, const std::string& dis
_svcHandle = CreateServiceW(
_scmHandle,
uname.c_str(),
udisplayName.c_str(),
udisplayName.c_str(),
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS,
SERVICE_DEMAND_START,
@ -113,7 +113,7 @@ void WinService::registerService(const std::string& path, const std::string& dis
throw SystemException("cannot register service", _name);
}
void WinService::registerService(const std::string& path)
{
registerService(path, _name);
@ -144,7 +144,7 @@ bool WinService::isRunning() const
return ss.dwCurrentState == SERVICE_RUNNING;
}
bool WinService::isStopped() const
bool WinService::isStopped() const
{
open();
SERVICE_STATUS ss;
@ -153,7 +153,7 @@ bool WinService::isStopped() const
return ss.dwCurrentState == SERVICE_STOPPED;
}
void WinService::start()
{
open();
@ -209,7 +209,7 @@ void WinService::setStartup(WinService::Startup startup)
}
}
WinService::Startup WinService::getStartup() const
{
POCO_LPQUERY_SERVICE_CONFIG pSvcConfig = config();
@ -252,15 +252,15 @@ void WinService::setFailureActions(FailureActionVector failureActions, const std
Poco::UnicodeConverter::toUTF16(rebootMessage, urebootMessage);
std::vector<wchar_t> rebootMessageVector{ urebootMessage.begin(), urebootMessage.end() };
rebootMessageVector.push_back('\0');
std::wstring uComamnd;
Poco::UnicodeConverter::toUTF16(command, uComamnd);
std::vector<wchar_t> commandVector{ uComamnd.begin(), uComamnd.end() };
commandVector.push_back('\0');
for (auto i = 0; i < failureActions.size(); i++)
for (auto i = 0; i < failureActions.size(); i++)
{
switch (failureActions[i].type)
switch (failureActions[i].type)
{
case SVC_REBOOT:
actions[i].Type = SC_ACTION_REBOOT;
@ -311,15 +311,15 @@ WinService::FailureActionTypeVector WinService::getFailureActions() const {
} else throw SystemException("cannot query service configuration", _name);
}
}
catch (...)
catch (...)
{
LocalFree(pSvcFailureAction);
throw;
}
FailureActionTypeVector result(3, SVC_NONE);
for (auto i = 0; i < pSvcFailureAction->cActions; i++)
for (auto i = 0; i < pSvcFailureAction->cActions; i++)
{
switch (pSvcFailureAction->lpsaActions->Type)
switch (pSvcFailureAction->lpsaActions->Type)
{
case SC_ACTION_NONE:
result[i] = SVC_NONE;

View File

@ -103,7 +103,7 @@ XMLConfiguration::XMLConfiguration(const Poco::XML::Document* pDocument, char de
load(pDocument);
}
XMLConfiguration::XMLConfiguration(const Poco::XML::Node* pNode):
_delim('.')
{
@ -126,7 +126,7 @@ XMLConfiguration::~XMLConfiguration()
void XMLConfiguration::load(Poco::XML::InputSource* pInputSource, unsigned long namePoolSize)
{
poco_check_ptr (pInputSource);
Poco::XML::DOMParser parser(namePoolSize);
parser.setFeature(Poco::XML::XMLReader::FEATURE_NAMESPACES, false);
parser.setFeature(Poco::XML::DOMParser::FEATURE_FILTER_WHITESPACE, true);
@ -144,21 +144,21 @@ void XMLConfiguration::load(Poco::XML::InputSource* pInputSource)
void XMLConfiguration::load(std::istream& istr)
{
Poco::XML::InputSource src(istr);
load(&src);
load(&src);
}
void XMLConfiguration::load(const std::string& path)
{
Poco::XML::InputSource src(path);
load(&src);
load(&src);
}
void XMLConfiguration::load(const Poco::XML::Document* pDocument)
{
poco_check_ptr (pDocument);
_pDocument = Poco::XML::AutoPtr<Poco::XML::Document>(const_cast<Poco::XML::Document*>(pDocument), true);
_pRoot = Poco::XML::AutoPtr<Poco::XML::Node>(pDocument->documentElement(), true);
}
@ -265,8 +265,8 @@ void XMLConfiguration::setRaw(const std::string& key, const std::string& value)
void XMLConfiguration::enumerate(const std::string& key, Keys& range) const
{
using Poco::NumberFormatter;
std::multiset<std::string> keys;
std::map<std::string, size_t> keys;
const Poco::XML::Node* pNode = findNode(key);
if (pNode)
{
@ -276,12 +276,12 @@ void XMLConfiguration::enumerate(const std::string& key, Keys& range) const
if (pChild->nodeType() == Poco::XML::Node::ELEMENT_NODE)
{
const std::string& nodeName = pChild->nodeName();
int n = (int) keys.count(nodeName);
if (n)
range.push_back(nodeName + "[" + NumberFormatter::format(n) + "]");
size_t& count = keys[nodeName];
if (count)
range.push_back(nodeName + "[" + NumberFormatter::format(count) + "]");
else
range.push_back(nodeName);
keys.insert(nodeName);
++count;
}
pChild = pChild->nextSibling();
}

View File

@ -9,7 +9,7 @@ include $(POCO_BASE)/build/rules/global
objects = AbstractConfigurationTest ConfigurationTestSuite \
ConfigurationMapperTest ConfigurationViewTest Driver \
HelpFormatterTest IniFileConfigurationTest LayeredConfigurationTest \
LoggingConfiguratorTest MapConfigurationTest \
LocalConfigurationViewTest LoggingConfiguratorTest MapConfigurationTest \
OptionProcessorTest OptionSetTest OptionTest \
OptionsTestSuite PropertyFileConfigurationTest \
SystemConfigurationTest UtilTestSuite XMLConfigurationTest \

View File

@ -7,4 +7,5 @@ vc.project.platforms = Win32
vc.project.configurations = debug_shared, release_shared, debug_static_mt, release_static_mt, debug_static_md, release_static_md
vc.project.prototype = TestSuite_vs90.vcproj
vc.project.compiler.include = ..\\..\\Foundation\\include;..\\..\\XML\\include;..\\..\\JSON\\include
vc.project.compiler.additionalOptions = /Zc:__cplusplus
vc.project.linker.dependencies.Win32 = iphlpapi.lib

View File

@ -607,6 +607,7 @@
<ClInclude Include="src\IniFileConfigurationTest.h"/>
<ClInclude Include="src\JSONConfigurationTest.h"/>
<ClInclude Include="src\LayeredConfigurationTest.h"/>
<ClInclude Include="src\LocalConfigurationViewTest.h"/>
<ClInclude Include="src\LoggingConfiguratorTest.h"/>
<ClInclude Include="src\MapConfigurationTest.h"/>
<ClInclude Include="src\OptionProcessorTest.h"/>
@ -656,6 +657,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="src\LayeredConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LocalConfigurationViewTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LoggingConfiguratorTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -173,6 +176,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

View File

@ -607,6 +607,7 @@
<ClInclude Include="src\IniFileConfigurationTest.h"/>
<ClInclude Include="src\JSONConfigurationTest.h"/>
<ClInclude Include="src\LayeredConfigurationTest.h"/>
<ClInclude Include="src\LocalConfigurationViewTest.h"/>
<ClInclude Include="src\LoggingConfiguratorTest.h"/>
<ClInclude Include="src\MapConfigurationTest.h"/>
<ClInclude Include="src\OptionProcessorTest.h"/>
@ -656,6 +657,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="src\LayeredConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LocalConfigurationViewTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LoggingConfiguratorTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -173,6 +176,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

View File

@ -607,6 +607,7 @@
<ClInclude Include="src\IniFileConfigurationTest.h"/>
<ClInclude Include="src\JSONConfigurationTest.h"/>
<ClInclude Include="src\LayeredConfigurationTest.h"/>
<ClInclude Include="src\LocalConfigurationViewTest.h"/>
<ClInclude Include="src\LoggingConfiguratorTest.h"/>
<ClInclude Include="src\MapConfigurationTest.h"/>
<ClInclude Include="src\OptionProcessorTest.h"/>
@ -656,6 +657,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>

View File

@ -90,6 +90,9 @@
<ClInclude Include="src\LayeredConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LocalConfigurationViewTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LoggingConfiguratorTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
@ -173,6 +176,9 @@
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,234 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Application">
<UniqueIdentifier>{6da2c515-b00e-4fae-b2b5-aa3588fa9ee5}</UniqueIdentifier>
</Filter>
<Filter Include="Application\Header Files">
<UniqueIdentifier>{363beeac-3d37-4eda-b2af-967dd3500746}</UniqueIdentifier>
</Filter>
<Filter Include="Application\Source Files">
<UniqueIdentifier>{b6d3f832-90b4-4893-b5c5-50c92c2222da}</UniqueIdentifier>
</Filter>
<Filter Include="_Suite">
<UniqueIdentifier>{6e72e80f-b934-4f32-a093-9fcdaa489717}</UniqueIdentifier>
</Filter>
<Filter Include="_Suite\Header Files">
<UniqueIdentifier>{24d80eaa-600a-4289-8049-251db65b6a04}</UniqueIdentifier>
</Filter>
<Filter Include="_Suite\Source Files">
<UniqueIdentifier>{c89f0423-2a46-41e7-8e44-9e0c722e1a2f}</UniqueIdentifier>
</Filter>
<Filter Include="_Driver">
<UniqueIdentifier>{1ef062b8-43ea-4e20-a3b4-8100dbf5d3f5}</UniqueIdentifier>
</Filter>
<Filter Include="_Driver\Source Files">
<UniqueIdentifier>{2e9a3808-48c8-4169-b04e-29635ebc21af}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration">
<UniqueIdentifier>{da024c3a-2123-4f46-a0f6-9c83ea0dd02e}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration\Header Files">
<UniqueIdentifier>{00043fe8-b671-499b-b347-08ba31776766}</UniqueIdentifier>
</Filter>
<Filter Include="Configuration\Source Files">
<UniqueIdentifier>{2f873f5e-88f6-4eb0-99e5-090c792c425e}</UniqueIdentifier>
</Filter>
<Filter Include="Options">
<UniqueIdentifier>{dd6f9455-e392-4e80-b23d-b960a7c3ae7e}</UniqueIdentifier>
</Filter>
<Filter Include="Options\Header Files">
<UniqueIdentifier>{3fbdada5-c2d5-492e-809d-e0d1a75ce544}</UniqueIdentifier>
</Filter>
<Filter Include="Options\Source Files">
<UniqueIdentifier>{7e4998f0-fb0a-449f-8e1d-756f8e096e55}</UniqueIdentifier>
</Filter>
<Filter Include="Windows">
<UniqueIdentifier>{9bc91c8d-03d5-4ab3-b5c6-f45d2d73ef9c}</UniqueIdentifier>
</Filter>
<Filter Include="Windows\Header Files">
<UniqueIdentifier>{eccedab4-9508-4718-b7bf-3e1e1d8bd76d}</UniqueIdentifier>
</Filter>
<Filter Include="Windows\Source Files">
<UniqueIdentifier>{d41c00e9-b185-4b54-8b48-410f9fae9fb3}</UniqueIdentifier>
</Filter>
<Filter Include="Timer">
<UniqueIdentifier>{2656a8b9-839b-4c6c-ad8f-f6f08d85e6e1}</UniqueIdentifier>
</Filter>
<Filter Include="Timer\Header Files">
<UniqueIdentifier>{74c99947-4001-4143-b46f-12fc00f1bb3e}</UniqueIdentifier>
</Filter>
<Filter Include="Timer\Source Files">
<UniqueIdentifier>{6f467c16-7a22-4a9e-ba79-6d5025cf2666}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\UtilTestSuite.h">
<Filter>_Suite\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\AbstractConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\ConfigurationMapperTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\ConfigurationTestSuite.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\ConfigurationViewTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\FilesystemConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\IniFileConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\JSONConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LayeredConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LoggingConfiguratorTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\LocalConfigurationViewTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\MapConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\PropertyFileConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\SystemConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\XMLConfigurationTest.h">
<Filter>Configuration\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\HelpFormatterTest.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\OptionProcessorTest.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\OptionSetTest.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\OptionsTestSuite.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\OptionTest.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\ValidatorTest.h">
<Filter>Options\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\WinConfigurationTest.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\WindowsTestSuite.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\WinRegistryTest.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\WinServiceTest.h">
<Filter>Windows\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\TimerTest.h">
<Filter>Timer\Header Files</Filter>
</ClInclude>
<ClInclude Include="src\TimerTestSuite.h">
<Filter>Timer\Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\UtilTestSuite.cpp">
<Filter>_Suite\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Driver.cpp">
<Filter>_Driver\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\AbstractConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ConfigurationMapperTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ConfigurationTestSuite.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ConfigurationViewTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\FilesystemConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\IniFileConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\JSONConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LayeredConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalConfigurationViewTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LoggingConfiguratorTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\MapConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\PropertyFileConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\SystemConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\XMLConfigurationTest.cpp">
<Filter>Configuration\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\HelpFormatterTest.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionProcessorTest.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionSetTest.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionsTestSuite.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\OptionTest.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\ValidatorTest.cpp">
<Filter>Options\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinConfigurationTest.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WindowsTestSuite.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinRegistryTest.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\WinServiceTest.cpp">
<Filter>Windows\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\TimerTest.cpp">
<Filter>Timer\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\TimerTestSuite.cpp">
<Filter>Timer\Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -491,6 +491,8 @@
RelativePath=".\src\JSONConfigurationTest.h"/>
<File
RelativePath=".\src\LayeredConfigurationTest.h"/>
<File
RelativePath=".\src\LocalConfigurationTest.h"/>
<File
RelativePath=".\src\LoggingConfiguratorTest.h"/>
<File
@ -520,6 +522,8 @@
RelativePath=".\src\JSONConfigurationTest.cpp"/>
<File
RelativePath=".\src\LayeredConfigurationTest.cpp"/>
<File
RelativePath=".\src\LocalConfigurationViewTest.cpp"/>
<File
RelativePath=".\src\LoggingConfiguratorTest.cpp"/>
<File

View File

@ -55,14 +55,14 @@ void AbstractConfigurationTest::testHasProperty()
void AbstractConfigurationTest::testGetString()
{
AutoPtr<AbstractConfiguration> pConf = createConfiguration();
assertTrue (pConf->getString("prop1") == "foo");
assertTrue (pConf->getString("prop2") == "bar");
assertTrue (pConf->getString("prop3.string1") == "foo");
assertTrue (pConf->getString("prop3.string2") == "bar");
assertTrue (pConf->getString("ref1") == "foobar");
assertTrue (pConf->getRawString("ref1") == "${prop3.string1}${prop3.string2}");
try
{
std::string res = pConf->getString("foo");
@ -71,7 +71,7 @@ void AbstractConfigurationTest::testGetString()
catch (Poco::NotFoundException&)
{
}
assertTrue (pConf->getString("prop1", "FOO") == "foo");
assertTrue (pConf->getString("prop2", "BAR") == "bar");
assertTrue (pConf->getString("prop3.string1", "FOO") == "foo");
@ -89,7 +89,7 @@ void AbstractConfigurationTest::testGetInt()
assertTrue (pConf->getInt("prop4.hex") == 0x1f);
assertTrue (pConf->getUInt("prop4.hex") == 0x1f);
assertTrue (pConf->getInt("ref2") == 42);
try
{
pConf->getInt("prop1");
@ -98,7 +98,7 @@ void AbstractConfigurationTest::testGetInt()
catch (Poco::SyntaxException&)
{
}
assertTrue (pConf->getInt("prop4.int1", 100) == 42);
assertTrue (pConf->getInt("prop4.int2", 100) == -42);
assertTrue (pConf->getInt("prop4.int3", 100) == 100);
@ -140,7 +140,7 @@ void AbstractConfigurationTest::testGetDouble()
assertTrue (pConf->getDouble("prop4.double1") == 1);
assertTrue (pConf->getDouble("prop4.double2") == -1.5);
try
{
pConf->getDouble("prop1");
@ -149,7 +149,7 @@ void AbstractConfigurationTest::testGetDouble()
catch (Poco::SyntaxException&)
{
}
assertTrue (pConf->getDouble("prop4.double1", 123.5) == 1);
assertTrue (pConf->getDouble("prop4.double2", 123.5) == -1.5);
assertTrue (pConf->getDouble("prop4.double3", 123.5) == 123.5);
@ -191,7 +191,7 @@ void AbstractConfigurationTest::testExpand()
assertTrue (pConf->getString("ref1") == "foobar");
assertTrue (pConf->getInt("ref2") == 42);
try
{
std::string s = pConf->getString("ref3");
@ -200,16 +200,16 @@ void AbstractConfigurationTest::testExpand()
catch (Poco::CircularReferenceException&)
{
}
assertTrue (pConf->getString("ref5") == "${refx}");
assertTrue (pConf->getString("ref6") == "${refx}");
assertTrue (pConf->expand("answer=${prop4.int1}") == "answer=42");
assertTrue (pConf->expand("bool5='${prop4.bool5}'") == "bool5='Yes'");
assertTrue (pConf->expand("undef='${undef}'") == "undef='${undef}'");
assertTrue (pConf->expand("deep='${ref1}'") == "deep='foobar'");
assertTrue (pConf->expand("deep='${ref7}'") == "deep='foobar'");
assertTrue (pConf->getString("dollar.atend") == "foo$");
assertTrue (pConf->getString("dollar.middle") == "foo$bar");
}
@ -261,7 +261,7 @@ void AbstractConfigurationTest::testSetDouble()
pConf->setDouble("set.double1", 1.5);
pConf->setDouble("set.double2", -1.5);
assertTrue (pConf->getDouble("set.double1") == 1.5);
assertTrue (pConf->getDouble("set.double2") == -1.5);
assertTrue (pConf->getDouble("set.double2") == -1.5);
}
@ -282,25 +282,25 @@ void AbstractConfigurationTest::testChangeEvents()
pConf->propertyChanging += Poco::delegate(this, &AbstractConfigurationTest::onPropertyChanging);
pConf->propertyChanged += Poco::delegate(this, &AbstractConfigurationTest::onPropertyChanged);
pConf->setString("set.string1", "foobar");
assertTrue (_changingKey == "set.string1");
assertTrue (_changingValue == "foobar");
assertTrue (_changedKey == "set.string1");
assertTrue (_changedValue == "foobar");
pConf->setInt("set.int1", 42);
assertTrue (_changingKey == "set.int1");
assertTrue (_changingValue == "42");
assertTrue (_changedKey == "set.int1");
assertTrue (_changedValue == "42");
pConf->setDouble("set.double1", 1.5);
assertTrue (_changingKey == "set.double1");
assertTrue (_changingValue == "1.5");
assertTrue (_changedKey == "set.double1");
assertTrue (_changedValue == "1.5");
pConf->setBool("set.bool1", true);
assertTrue (_changingKey == "set.bool1");
assertTrue (_changingValue == "true");
@ -344,7 +344,7 @@ void AbstractConfigurationTest::testKeys()
pConf->keys("prop1", keys);
assertTrue (keys.empty());
pConf->keys("prop3", keys);
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "string1") != keys.end());
@ -398,7 +398,7 @@ void AbstractConfigurationTest::testRemove()
AbstractConfiguration::Ptr AbstractConfigurationTest::createConfiguration() const
{
AbstractConfiguration::Ptr pConfig = allocConfiguration();
pConfig->setString("prop1", "foo");
pConfig->setString("prop2", "bar");
pConfig->setString("prop3.string1", "foo");

View File

@ -44,10 +44,10 @@ public:
void testRemove();
void testChangeEvents();
void testRemoveEvents();
void setUp();
void tearDown();
void onPropertyChanging(const void*, Poco::Util::AbstractConfiguration::KeyValue& kv);
void onPropertyChanged(const void*, const Poco::Util::AbstractConfiguration::KeyValue& kv);
void onPropertyRemoving(const void*, const std::string& key);

View File

@ -52,10 +52,10 @@ void ConfigurationMapperTest::testMapper1()
assertTrue (std::find(keys.begin(), keys.end(), "string2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub2") != keys.end());
assertTrue (pMapper->getString("prop5.string1") == "foo");
assertTrue (pMapper->getString("prop5.sub1.string1") == "FOO");
pMapper->setString("prop5.string3", "baz");
assertTrue (pMapper->getString("prop5.string3") == "baz");
assertTrue (pConf->getString("prop5.string3") == "baz");
@ -92,7 +92,7 @@ void ConfigurationMapperTest::testMapper2()
assertTrue (pMapper->getString("root.conf.string1") == "foo");
assertTrue (pMapper->getString("root.conf.sub1.string1") == "FOO");
pMapper->setString("root.conf.string3", "baz");
assertTrue (pMapper->getString("root.conf.string3") == "baz");
assertTrue (pConf->getString("prop5.string3") == "baz");
@ -126,10 +126,10 @@ void ConfigurationMapperTest::testMapper3()
assertTrue (std::find(keys.begin(), keys.end(), "string2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub2") != keys.end());
assertTrue (pMapper->getString("root.prop5.string1") == "foo");
assertTrue (pMapper->getString("root.prop5.sub1.string1") == "FOO");
pMapper->setString("root.prop5.string3", "baz");
assertTrue (pMapper->getString("root.prop5.string3") == "baz");
assertTrue (pConf->getString("prop5.string3") == "baz");
@ -155,10 +155,10 @@ void ConfigurationMapperTest::testMapper4()
assertTrue (std::find(keys.begin(), keys.end(), "string2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub2") != keys.end());
assertTrue (pMapper->getString("string1") == "foo");
assertTrue (pMapper->getString("sub1.string1") == "FOO");
pMapper->setString("string3", "baz");
assertTrue (pMapper->getString("string3") == "baz");
assertTrue (pConf->getString("prop5.string3") == "baz");

View File

@ -11,6 +11,7 @@
#include "ConfigurationTestSuite.h"
#include "AbstractConfigurationTest.h"
#include "ConfigurationViewTest.h"
#include "LocalConfigurationViewTest.h"
#include "ConfigurationMapperTest.h"
#include "MapConfigurationTest.h"
#include "LayeredConfigurationTest.h"
@ -28,6 +29,7 @@ CppUnit::Test* ConfigurationTestSuite::suite()
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("ConfigurationTestSuite");
pSuite->addTest(ConfigurationViewTest::suite());
pSuite->addTest(LocalConfigurationViewTest::suite());
pSuite->addTest(ConfigurationMapperTest::suite());
pSuite->addTest(MapConfigurationTest::suite());
pSuite->addTest(LayeredConfigurationTest::suite());

View File

@ -46,13 +46,13 @@ void ConfigurationViewTest::testView()
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop3") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop4") != keys.end());
assertTrue (pView->getString("prop1") == "foo");
assertTrue (pView->getString("prop3.string1") == "foo");
pView->setString("prop6", "foobar");
assertTrue (pConf->getString("prop6") == "foobar");
pView = pConf->createView("prop1");
pView->keys(keys);
assertTrue (keys.empty());
@ -66,7 +66,7 @@ void ConfigurationViewTest::testView()
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "string1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "string2") != keys.end());
assertTrue (pView->getString("string1") == "foo");
assertTrue (pView->getString("string2") == "bar");
@ -80,7 +80,7 @@ void ConfigurationViewTest::testView()
assertTrue (std::find(keys.begin(), keys.end(), "string1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "sub2") != keys.end());
assertTrue (pView->getString("sub1.string1") == "FOO");
assertTrue (pView->getString("sub2.string2") == "Bar");
@ -89,10 +89,10 @@ void ConfigurationViewTest::testView()
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "string1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "string2") != keys.end());
assertTrue (pView->getString("string1") == "FOO");
assertTrue (pView->getString("string2") == "BAR");
pView->setString("string3", "foobar");
assertTrue (pConf->getString("prop5.sub1.string3") == "foobar");

View File

@ -36,7 +36,7 @@ FilesystemConfigurationTest::~FilesystemConfigurationTest()
void FilesystemConfigurationTest::testFilesystemConfiguration()
{
AutoPtr<FilesystemConfiguration> config = new FilesystemConfiguration(_path.toString());
config->setString("logging.loggers.root.channel.class", "ConsoleChannel");
config->setString("logging.loggers.app.name", "Application");
config->setString("logging.loggers.app.channel", "c1");
@ -52,7 +52,7 @@ void FilesystemConfigurationTest::testFilesystemConfiguration()
config->setString("logging.loggers.app.channel", "c2");
assertTrue (config->getString("logging.loggers.app.channel") == "c2");
AbstractConfiguration::Keys keys;
config->keys(keys);
assertTrue (keys.size() == 1);
@ -72,7 +72,7 @@ void FilesystemConfigurationTest::testFilesystemConfiguration()
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "class") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "pattern") != keys.end());
assertTrue (config->hasProperty("logging.loggers.root.channel.class"));
config->clear();
assertTrue (!config->hasProperty("logging.loggers.root.channel.class"));

View File

@ -40,7 +40,7 @@ void HelpFormatterTest::testHelpFormatter()
.required(false)
.repeatable(true)
.argument("path"));
set.addOption(
Option("library-dir", "L", "specify a search path for locating library files (this option has a very long description)")
.required(false)
@ -56,7 +56,7 @@ void HelpFormatterTest::testHelpFormatter()
.description("enable verbose mode")
.required(false)
.repeatable(false));
set.addOption(
Option("optimize", "O")
.description("enable optimization")
@ -66,10 +66,10 @@ void HelpFormatterTest::testHelpFormatter()
HelpFormatter formatter(set);
formatter.format(std::cout);
formatter.setCommand("cc");
formatter.format(std::cout);
formatter.setUsage("OPTIONS FILES");
formatter.setHeader("Lorem ipsum dolor sit amet, consectetuer adipiscing elit. "
"Vivamus volutpat imperdiet massa. Nulla at ipsum vitae risus facilisis posuere. "
@ -79,10 +79,10 @@ void HelpFormatterTest::testHelpFormatter()
"Etiam odio dolor, fermentum quis, mollis nec, sodales sed, tellus. "
"Quisque consequat orci eu augue. Aliquam ac nibh ac neque hendrerit iaculis.");
formatter.format(std::cout);
formatter.setUnixStyle(false);
formatter.format(std::cout);
formatter.setHeader("");
formatter.setFooter("tab: a\tb\tcde\tf\n\ta\n\t\tb");
formatter.format(std::cout);

View File

@ -37,7 +37,7 @@ IniFileConfigurationTest::~IniFileConfigurationTest()
void IniFileConfigurationTest::testLoad()
{
static const std::string iniFile =
static const std::string iniFile =
"; comment\n"
" ; comment \n"
"prop1=value1\n"
@ -51,10 +51,10 @@ void IniFileConfigurationTest::testLoad()
"prop1 = value 5\n"
"\t \n"
"Prop2 = value6";
std::istringstream istr(iniFile);
std::istringstream istr(iniFile);
AutoPtr<IniFileConfiguration> pConf = new IniFileConfiguration(istr);
assertTrue (pConf->getString("prop1") == "value1");
assertTrue (pConf->getString("prop2") == "value2");
assertTrue (pConf->getString("section1.prop1") == "value3");
@ -62,7 +62,7 @@ void IniFileConfigurationTest::testLoad()
assertTrue (pConf->getString("section 2.prop1") == "value 5");
assertTrue (pConf->getString("section 2.prop2") == "value6");
assertTrue (pConf->getString("SECTION 2.PROP2") == "value6");
AbstractConfiguration::Keys keys;
pConf->keys(keys);
assertTrue (keys.size() == 4);
@ -70,12 +70,12 @@ void IniFileConfigurationTest::testLoad()
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "section1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "section 2") != keys.end());
pConf->keys("Section1", keys);
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "prop1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
pConf->setString("prop1", "value11");
assertTrue (pConf->getString("PROP1") == "value11");
pConf->setString("Prop1", "value12");

View File

@ -113,6 +113,26 @@ void JSONConfigurationTest::testSetArrayElement()
}
void JSONConfigurationTest::testConfigurationView()
{
std::string json = R"json({ "foo" : [ "bar" ] })json";
Poco::Util::JSONConfiguration config;
std::istringstream stream(json);
config.load(stream);
Poco::Util::AbstractConfiguration::Ptr pView = config.createView("foo");
assertTrue (pView->getString("[0]") == "bar");
try
{
pView->getString("[1]");
fail ("must throw on index out of bounds");
}
catch(Poco::NotFoundException&){}
}
AbstractConfiguration::Ptr JSONConfigurationTest::allocConfiguration() const
{
return new JSONConfiguration;
@ -136,6 +156,7 @@ CppUnit::Test* JSONConfigurationTest::suite()
AbstractConfigurationTest_addTests(pSuite, JSONConfigurationTest);
CppUnit_addTest(pSuite, JSONConfigurationTest, testLoad);
CppUnit_addTest(pSuite, JSONConfigurationTest, testSetArrayElement);
CppUnit_addTest(pSuite, JSONConfigurationTest, testConfigurationView);
return pSuite;
}

View File

@ -26,6 +26,7 @@ public:
void testLoad();
void testSetArrayElement();
void testConfigurationView();
void setUp();
void tearDown();

View File

@ -39,11 +39,11 @@ LayeredConfigurationTest::~LayeredConfigurationTest()
void LayeredConfigurationTest::testEmpty()
{
AutoPtr<LayeredConfiguration> pLC = new LayeredConfiguration;
AbstractConfiguration::Keys keys;
pLC->keys(keys);
assertTrue (keys.empty());
assertTrue (!pLC->hasProperty("foo"));
try
{
@ -53,7 +53,7 @@ void LayeredConfigurationTest::testEmpty()
catch (RuntimeException&)
{
}
try
{
std::string s = pLC->getString("foo");
@ -69,10 +69,10 @@ void LayeredConfigurationTest::testOneLayer()
{
AutoPtr<LayeredConfiguration> pLC = new LayeredConfiguration;
AutoPtr<MapConfiguration> pMC = new MapConfiguration;
pMC->setString("prop1", "value1");
pMC->setString("prop2", "value2");
pLC->addWriteable(pMC, 0);
AbstractConfiguration::Keys keys;
@ -80,7 +80,7 @@ void LayeredConfigurationTest::testOneLayer()
assertTrue (keys.size() == 2);
assertTrue (std::find(keys.begin(), keys.end(), "prop1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
assertTrue (pLC->getString("prop1") == "value1");
assertTrue (pLC->getString("prop2") == "value2");
@ -97,12 +97,12 @@ void LayeredConfigurationTest::testTwoLayers()
AutoPtr<LayeredConfiguration> pLC = new LayeredConfiguration;
AutoPtr<MapConfiguration> pMC1 = new MapConfiguration;
AutoPtr<MapConfiguration> pMC2 = new MapConfiguration;
pMC1->setString("prop1", "value1");
pMC1->setString("prop2", "value2");
pMC2->setString("prop2", "value3");
pMC2->setString("prop3", "value4");
pLC->add(pMC1, 0);
pLC->addWriteable(pMC2, 1);
@ -112,7 +112,7 @@ void LayeredConfigurationTest::testTwoLayers()
assertTrue (std::find(keys.begin(), keys.end(), "prop1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop3") != keys.end());
assertTrue (pLC->getString("prop1") == "value1");
assertTrue (pLC->getString("prop2") == "value2");
assertTrue (pLC->getString("prop3") == "value4");
@ -139,7 +139,7 @@ void LayeredConfigurationTest::testThreeLayers()
AutoPtr<MapConfiguration> pMC1 = new MapConfiguration;
AutoPtr<MapConfiguration> pMC2 = new MapConfiguration;
AutoPtr<MapConfiguration> pMC3 = new MapConfiguration;
pMC1->setString("prop1", "value1");
pMC1->setString("prop2", "value2");
pMC1->setString("prop3", "value3");
@ -147,11 +147,11 @@ void LayeredConfigurationTest::testThreeLayers()
pMC2->setString("prop4", "value5");
pMC3->setString("prop5", "value6");
pMC3->setString("prop1", "value7");
pLC->add(pMC1, 0);
pLC->add(pMC2, 1);
pLC->add(pMC3, -1);
assertTrue (pLC->getString("prop1") == "value7");
assertTrue (pLC->getString("prop2") == "value2");
assertTrue (pLC->getString("prop3") == "value3");
@ -165,12 +165,12 @@ void LayeredConfigurationTest::testRemove()
AutoPtr<LayeredConfiguration> pLC = new LayeredConfiguration;
AutoPtr<MapConfiguration> pMC1 = new MapConfiguration;
AutoPtr<MapConfiguration> pMC2 = new MapConfiguration;
pMC1->setString("prop1", "value1");
pMC1->setString("prop2", "value2");
pMC2->setString("prop2", "value3");
pMC2->setString("prop3", "value4");
pLC->add(pMC1, 0);
pLC->add(pMC2, -1);
@ -181,7 +181,7 @@ void LayeredConfigurationTest::testRemove()
assertTrue (std::find(keys.begin(), keys.end(), "prop1") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop2") != keys.end());
assertTrue (std::find(keys.begin(), keys.end(), "prop3") != keys.end());
assertTrue (pLC->getString("prop1") == "value1");
assertTrue (pLC->getString("prop2") == "value3");
assertTrue (pLC->getString("prop3") == "value4");
@ -201,13 +201,13 @@ void LayeredConfigurationTest::testFind()
LayeredConfiguration::Ptr pLC = new LayeredConfiguration;
AbstractConfiguration::Ptr pMC1 = new MapConfiguration;
AbstractConfiguration::Ptr pMC2 = new MapConfiguration;
pLC->add(pMC1, 0);
pLC->add(pMC2, "label", -1);
AbstractConfiguration::Ptr pFound = pLC->find("label");
assertTrue (pFound == pMC2);
pFound = pLC->find("notfound");
assertTrue (pFound.isNull());
}

Some files were not shown because too many files have changed in this diff Show More