diff --git a/Data/SQLite/CMakeLists.txt b/Data/SQLite/CMakeLists.txt
index 263acc1ad..7141112e6 100644
--- a/Data/SQLite/CMakeLists.txt
+++ b/Data/SQLite/CMakeLists.txt
@@ -13,10 +13,6 @@ else()
POCO_SOURCES(SQLITE_SRCS sqlite3
src/sqlite3.c
)
-
- POCO_HEADERS(SQLITE_SRCS sqlite3
- src/sqlite3.h
- )
endif()
# Version Resource
diff --git a/Data/samples/CMakeLists.txt b/Data/samples/CMakeLists.txt
index 58727cd3c..7aee11a55 100644
--- a/Data/samples/CMakeLists.txt
+++ b/Data/samples/CMakeLists.txt
@@ -4,3 +4,4 @@ add_subdirectory(RowFormatter)
add_subdirectory(Tuple)
add_subdirectory(TypeHandler)
add_subdirectory(WebNotifier)
+add_subdirectory(DBLogger)
diff --git a/Data/samples/DBLogger/CMakeLists.txt b/Data/samples/DBLogger/CMakeLists.txt
new file mode 100644
index 000000000..74fa2f679
--- /dev/null
+++ b/Data/samples/DBLogger/CMakeLists.txt
@@ -0,0 +1,14 @@
+
+# Sources
+file(GLOB SRCS_G "src/*.cpp")
+POCO_SOURCES_AUTO(DBLOGGER_SRCS ${SRCS_G})
+
+# Headers
+file(GLOB_RECURSE HDRS_G "src/*.h")
+POCO_HEADERS_AUTO(DBLOGGER_SRCS ${HDRS_G})
+
+add_executable(DBLogger ${DBLOGGER_SRCS})
+
+target_link_libraries(DBLogger PUBLIC Poco::Util Poco::DataSQLite)
+
+add_custom_target(DBLogger-properties SOURCES DBLogger.properties)
diff --git a/Data/samples/DBLogger/DBLogger.progen b/Data/samples/DBLogger/DBLogger.progen
new file mode 100644
index 000000000..939ad5c8f
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger.progen
@@ -0,0 +1,11 @@
+vc.project.guid = ${vc.project.guidFromName}
+vc.project.name = ${vc.project.baseName}
+vc.project.target = ${vc.project.name}
+vc.project.type = executable
+vc.project.pocobase = ..\\..\\..
+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;..\\..\\..\\JSON\\include;..\\..\\..\\XML\\include;..\\..\\..\\Util\\include;..\\..\\..\\Data\\include;..\\..\\..\\Data\\SQLParser;..\\Data\\SQLParser\\src;..\\..\\..\\Data\\SQLite\\include
+vc.project.compiler.additionalOptions = /Zc:__cplusplus
+vc.project.linker.dependencies = iphlpapi.lib
diff --git a/Data/samples/DBLogger/DBLogger.properties b/Data/samples/DBLogger/DBLogger.properties
new file mode 100644
index 000000000..be72e2730
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger.properties
@@ -0,0 +1,67 @@
+
+#
+# Database inserter (destination)
+#
+
+#
+# Destination database parameters:
+#
+# (Mandatory) Database connector (for example sqlite)
+#
+DBLogger.connector = sqlite
+
+#
+# (Mandatory) Database connection string (connector specific)
+#
+DBLogger.constring = demo-logs.db3
+
+#
+# (Optional) Number of workers to insert logs into the database in parallel (default = 2)
+#
+# DBLogger.workers = 2
+
+# ----------------------------------------------------------------
+
+#
+# (Optional) Create demo SQL messages for testing purposes (default = false)
+#
+DBLogger.demo = true
+
+logging.loggers.root.channel = console
+logging.loggers.root.level = information
+
+logging.channels.console.class = ColorConsoleChannel
+logging.channels.console.pattern = %L%Y-%m-%d %H:%M:%S.%i [%p] : %t
+
+#
+# SQL logger to create demo messages
+# NOTE: Do not rename the logger.
+#
+
+logging.loggers.sqldemo.channel = sql
+logging.loggers.sqldemo.name = SQLDemo
+logging.loggers.sqldemo.level = debug
+
+logging.channels.sql.class = SQLChannel
+logging.channels.sql.name = DBLogger
+
+#
+# (Mandatory) Directory to scan for .sql files
+#
+logging.channels.sql.directory = .
+
+#
+# NOTE: Do not configure database to create SQL logger files
+#
+# logging.channels.sql.connector = SQLite
+# logging.channels.sql.connect = DBLogger.db3
+
+logging.channels.sql.timeout = 3000
+logging.channels.sql.minBatch = 5
+logging.channels.sql.maxBatch = 1000
+logging.channels.sql.bulk = true
+logging.channels.sql.table = T_LOG
+
+logging.channels.sql.throw = false
+logging.channels.sql.file = ${application.baseName}.sql
+
diff --git a/Data/samples/DBLogger/DBLogger_vs160.vcxproj b/Data/samples/DBLogger/DBLogger_vs160.vcxproj
new file mode 100644
index 000000000..1f0d774e9
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger_vs160.vcxproj
@@ -0,0 +1,663 @@
+
+
+
+
+ debug_shared
+ Win32
+
+
+ debug_shared
+ x64
+
+
+ debug_static_md
+ Win32
+
+
+ debug_static_md
+ x64
+
+
+ debug_static_mt
+ Win32
+
+
+ debug_static_mt
+ x64
+
+
+ release_shared
+ Win32
+
+
+ release_shared
+ x64
+
+
+ release_static_md
+ Win32
+
+
+ release_static_md
+ x64
+
+
+ release_static_mt
+ Win32
+
+
+ release_static_mt
+ x64
+
+
+
+ 17.0
+ DBLogger
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}
+ DBLogger
+ Win32Proj
+
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+ Application
+ MultiByte
+ v142
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>17.0.35219.272
+ DBLoggerd
+ DBLoggerd
+ DBLoggerd
+ DBLogger
+ DBLogger
+ DBLogger
+ DBLoggerd
+ DBLoggerd
+ DBLoggerd
+ DBLogger
+ DBLogger
+ DBLogger
+
+
+ bin\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin\static_mt\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\static_mt\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin\static_md\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\static_md\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\static_mt\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\static_mt\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\static_md\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\static_md\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_mt\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_mt\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_md\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_md\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin64\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin64\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_mt\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_mt\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_md\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_md\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ true
+ stdcpp17
+ stdc11
+
+
+ true
+ stdcpp17
+ stdc11
+
+
+
+
+
diff --git a/Data/samples/DBLogger/DBLogger_vs160.vcxproj.filters b/Data/samples/DBLogger/DBLogger_vs160.vcxproj.filters
new file mode 100644
index 000000000..71f214217
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger_vs160.vcxproj.filters
@@ -0,0 +1,17 @@
+
+
+
+
+ {8747f452-7c1b-44d2-b0e5-1681f3dab78e}
+
+
+ {f73ed930-0047-402d-8e77-3b9b9ddbc3a7}
+
+
+
+
+
+ Source Files
+
+
+
\ No newline at end of file
diff --git a/Data/samples/DBLogger/DBLogger_vs170.vcxproj b/Data/samples/DBLogger/DBLogger_vs170.vcxproj
new file mode 100644
index 000000000..19a6d7010
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger_vs170.vcxproj
@@ -0,0 +1,978 @@
+
+
+
+
+ debug_shared
+ ARM64
+
+
+ debug_shared
+ Win32
+
+
+ debug_shared
+ x64
+
+
+ debug_static_md
+ ARM64
+
+
+ debug_static_md
+ Win32
+
+
+ debug_static_md
+ x64
+
+
+ debug_static_mt
+ ARM64
+
+
+ debug_static_mt
+ Win32
+
+
+ debug_static_mt
+ x64
+
+
+ release_shared
+ ARM64
+
+
+ release_shared
+ Win32
+
+
+ release_shared
+ x64
+
+
+ release_static_md
+ ARM64
+
+
+ release_static_md
+ Win32
+
+
+ release_static_md
+ x64
+
+
+ release_static_mt
+ ARM64
+
+
+ release_static_mt
+ Win32
+
+
+ release_static_mt
+ x64
+
+
+
+ 17.0
+ DBLogger
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}
+ DBLogger
+ Win32Proj
+
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>17.0.35219.272
+ DBLoggerd
+ DBLoggerd
+ DBLoggerd
+ DBLogger
+ DBLogger
+ DBLogger
+ DBLoggerd
+ DBLoggerd
+ DBLoggerd
+ DBLogger
+ DBLogger
+ DBLogger
+ DBLoggerd
+ DBLoggerd
+ DBLoggerd
+ DBLogger
+ DBLogger
+ DBLogger
+
+
+ binA64\
+ objA64\DBLogger\$(Configuration)\
+ true
+
+
+ binA64\
+ objA64\DBLogger\$(Configuration)\
+ false
+
+
+ binA64\static_mt\
+ objA64\DBLogger\$(Configuration)\
+ true
+
+
+ binA64\static_mt\
+ objA64\DBLogger\$(Configuration)\
+ false
+
+
+ binA64\static_md\
+ objA64\DBLogger\$(Configuration)\
+ true
+
+
+ binA64\static_md\
+ objA64\DBLogger\$(Configuration)\
+ false
+
+
+ bin\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin\static_mt\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\static_mt\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin\static_md\
+ obj\DBLogger\$(Configuration)\
+ true
+
+
+ bin\static_md\
+ obj\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\static_mt\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\static_mt\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+ bin64\static_md\
+ obj64\DBLogger\$(Configuration)\
+ true
+
+
+ bin64\static_md\
+ obj64\DBLogger\$(Configuration)\
+ false
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ $(OutDir)$(TargetName).exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineARM64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ binA64\DBLogger.exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineARM64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ binA64\static_mt\DBLoggerd.exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineARM64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ binA64\static_mt\DBLogger.exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineARM64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ binA64\static_md\DBLoggerd.exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineARM64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ $(OutDir)$(TargetName).exe
+ ..\..\..\libA64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineARM64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_mt\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_mt\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_md\DBLoggerd.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX86
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin\static_md\DBLogger.exe
+ ..\..\..\lib;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX86
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin64\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;%(AdditionalDependencies)
+ bin64\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_mt\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_mt\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ Disabled
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ true
+ true
+ true
+ true
+
+ Level3
+ ProgramDatabase
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_md\DBLoggerd.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ true
+ true
+ $(OutDir)$(TargetName).pdb
+ Console
+ MachineX64
+
+
+
+
+ MaxSpeed
+ OnlyExplicitInline
+ true
+ Speed
+ true
+ .\include;..\..\..\Foundation\include;..\..\..\JSON\include;..\..\..\XML\include;..\..\..\Util\include;..\..\..\Data\include;..\..\..\Data\SQLParser;..\Data\SQLParser\src;..\..\..\Data\SQLite\include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;POCO_STATIC;%(PreprocessorDefinitions)
+ true
+ MultiThreadedDLL
+ false
+ true
+ true
+ true
+
+ Level3
+
+ Default
+ $(OutDir)$(TargetName).pdb
+ /Zc:__cplusplus %(AdditionalOptions)
+ true
+ stdcpp17
+ stdc11
+
+
+ iphlpapi.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies)
+ bin64\static_md\DBLogger.exe
+ ..\..\..\lib64;%(AdditionalLibraryDirectories)
+ false
+ Console
+ true
+ true
+ MachineX64
+
+
+
+
+ true
+ stdcpp17
+ stdc11
+
+
+ true
+ stdcpp17
+ stdc11
+
+
+
+
+
diff --git a/Data/samples/DBLogger/DBLogger_vs170.vcxproj.filters b/Data/samples/DBLogger/DBLogger_vs170.vcxproj.filters
new file mode 100644
index 000000000..4f7a16b01
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger_vs170.vcxproj.filters
@@ -0,0 +1,17 @@
+
+
+
+
+ {b2b53da4-c45b-4734-9096-6c64453817a6}
+
+
+ {654b0a83-74d5-4a84-b813-6493ce240b90}
+
+
+
+
+
+ Source Files
+
+
+
\ No newline at end of file
diff --git a/Data/samples/DBLogger/DBLogger_vs90.vcproj b/Data/samples/DBLogger/DBLogger_vs90.vcproj
new file mode 100644
index 000000000..4954238b5
--- /dev/null
+++ b/Data/samples/DBLogger/DBLogger_vs90.vcproj
@@ -0,0 +1,451 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Data/samples/DBLogger/Makefile b/Data/samples/DBLogger/Makefile
new file mode 100644
index 000000000..25fd65b70
--- /dev/null
+++ b/Data/samples/DBLogger/Makefile
@@ -0,0 +1,19 @@
+#
+# Makefile
+#
+# Makefile for Poco Data DBLogger sample
+#
+
+include $(POCO_BASE)/build/rules/global
+
+objects = DBLogger SQLLogInserter
+
+ifndef POCO_DATA_NO_SQL_PARSER
+ target_includes = $(POCO_BASE)/Data/src
+endif
+
+target = DBLogger
+target_version = 1
+target_libs = PocoDataSQLite PocoData PocoFoundation PocoUtil
+
+include $(POCO_BASE)/build/rules/exec
diff --git a/Data/samples/DBLogger/src/DBLogger.cpp b/Data/samples/DBLogger/src/DBLogger.cpp
new file mode 100644
index 000000000..3edf46d25
--- /dev/null
+++ b/Data/samples/DBLogger/src/DBLogger.cpp
@@ -0,0 +1,285 @@
+//
+// DBLogger.cpp
+//
+// This sample demonstrates the Data library recordset row formatting
+// and streaming capabilities.
+//
+// Copyright (c) 2024, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+
+
+#include "Poco/Data/SQLChannel.h"
+#include "Poco/Data/SQLite/Connector.h"
+#include "Poco/Util/HelpFormatter.h"
+#include "Poco/Util/Option.h"
+#include "Poco/Util/OptionException.h"
+#include "Poco/Util/OptionSet.h"
+#include "Poco/Util/ServerApplication.h"
+
+#include "SQLLogInserter.h"
+
+using namespace Poco::Data::Keywords;
+using Poco::Util::ServerApplication;
+using Poco::Util::Option;
+using Poco::Util::OptionSet;
+using Poco::Util::HelpFormatter;
+using Poco::Util::OptionCallback;
+
+using namespace std::string_literals;
+
+
+class DBLogger: public ServerApplication
+{
+public:
+
+ using WorkSet = std::unordered_set;
+
+ DBLogger()
+ {
+ Poco::Data::SQLite::Connector::registerConnector();
+ Poco::Data::SQLChannel::registerChannel();
+ }
+
+ ~DBLogger() override = default;
+
+protected:
+ void initialize(Application& self) override
+ {
+ if (_helpRequested)
+ {
+ return;
+ }
+
+ loadConfiguration(); // load default configuration files, if present
+ Application::initialize(self);
+
+ const auto& cfg { config() };
+
+ if (!cfg.has("logging.channels.sql.directory"))
+ {
+ throw Poco::Util::MissingOptionException ("Missing scanning directory.");
+ }
+ _inserter.setDirectory(cfg.getString("logging.channels.sql.directory") );
+
+ if (!cfg.has("DBLogger.connector"))
+ {
+ throw Poco::Util::MissingOptionException ("Missing database connector.");
+ }
+ _inserter.setConnector(cfg.getString("DBLogger.connector") );
+
+ if (!cfg.has("DBLogger.constring"))
+ {
+ throw Poco::Util::MissingOptionException ("Missing database connection string.");
+ }
+ _inserter.setConnectionString(cfg.getString("DBLogger.constring") );
+
+ _inserter.setNumWorkers(cfg.getUInt64("DBLogger.workers", 2) );
+ _demoMessagesRequested = cfg.getBool("DBLogger.demo", false);
+
+ logger().information("Directory: %s", _inserter.directory());
+ logger().information("Database: %s, %s", _inserter.connector(), _inserter.connectionString());
+ logger().information("Number of workers: %z", _inserter.numWorkers());
+
+ if (_demoMessagesRequested)
+ {
+ auto& dl = Poco::Logger::get("SQLDemo");
+ auto* sqlChannel = dynamic_cast(dl.getChannel().get());
+ if (sqlChannel == nullptr)
+ {
+ throw Poco::Util::UnexpectedArgumentException ("SQLDemo logger does not have SQL channel.");
+ }
+
+ _tableName = cfg.getString("logging.channels.sql.table");
+
+ // Only delete and create table when creating demo messages
+ logger().information("Demo messages: Creating new table: %s", _tableName);
+
+ Poco::Data::Session session (_inserter.connector(), _inserter.connectionString());
+
+ if (!session.isGood() || !session.isConnected())
+ {
+ throw Poco::Data::NotConnectedException("Can't create demo database.");
+ }
+
+ session << ("DROP TABLE IF EXISTS "s + _tableName), now;
+ const auto create {
+ "CREATE TABLE "s + _tableName +
+ " (Source VARCHAR, Name VARCHAR, ProcessId INTEGER, Thread VARCHAR,"s +
+ " ThreadId INTEGER, Priority INTEGER, Text VARCHAR, DateTime DATE)"s
+ };
+
+ session << create, now;
+ }
+
+ _active = true;
+ _startTime.update();
+
+ _inserter.start();
+
+ logger().information("Started directory scanning.");
+
+ if (_demoMessagesRequested)
+ {
+ _sqlSourceThread = std::thread(&DBLogger::createMessages, this);
+ logger().information("Started creating demo messages.");
+ }
+ }
+
+
+ void uninitialize() override
+ {
+ if (_helpRequested)
+ {
+ return;
+ }
+
+ logger().information("Request to stop processing.");
+
+ if (_demoMessagesRequested)
+ {
+ _sqlSourceThread.join();
+ }
+ _inserter.stop();
+
+ logger().information(
+ "Created %z messages, processed %z files in %Ld ms.",
+ _created, _inserter.totalProcessed(), (_startTime.elapsed() / 1000)
+ );
+
+ Application::uninitialize();
+ }
+
+
+ void reinitialize(Application& self) override
+ {
+ Application::reinitialize(self);
+ }
+
+
+ void defineOptions(OptionSet& options) override
+ {
+ Application::defineOptions(options);
+
+ options.addOption(
+ Option("help", "h", "display help information on command line arguments")
+ .required(false)
+ .repeatable(false)
+ .callback(OptionCallback(this, &DBLogger::handleHelp))
+ );
+
+ options.addOption(
+ Option("?", "?", "display help information on command line arguments")
+ .required(false)
+ .repeatable(false)
+ .callback(OptionCallback(this, &DBLogger::handleHelp))
+ );
+
+ options.addOption(
+ Option("dir", "d", "directory path to scan for SQL log files")
+ .repeatable(false)
+ .argument("dir")
+ .binding("logging.channels.sql.directory")
+ );
+
+ options.addOption(
+ Option("connector", "c", "database connector")
+ .repeatable(false)
+ .argument("type")
+ .binding("DBLogger.connector")
+ );
+
+ options.addOption(
+ Option("constring", "s", "database connection string")
+ .repeatable(false)
+ .argument("cstr")
+ .binding("DBLogger.constring")
+ );
+
+ options.addOption(
+ Option("workers", "w", "number of workers inserting into database (default 2)")
+ .repeatable(false)
+ .argument("N")
+ .binding("DBLogger.workers")
+ );
+
+ // Only command line option
+ options.addOption(
+ Option("demo", "m", "create demo messages")
+ .required(false)
+ .repeatable(false)
+ .binding("DBLogger.demo")
+ .callback(OptionCallback(this, &DBLogger::handleCreateDemoMessages)));
+
+ }
+
+
+ void handleHelp(const std::string& name, const std::string& value)
+ {
+ _helpRequested = true;
+ displayHelp();
+ stopOptionsProcessing();
+ }
+
+
+ void handleCreateDemoMessages(const std::string& name, const std::string& value)
+ {
+ config().setBool("DBLogger.demo", true);
+ }
+
+
+ void displayHelp()
+ {
+ HelpFormatter helpFormatter(options());
+ helpFormatter.setCommand(commandName());
+ helpFormatter.setUsage("OPTIONS");
+ helpFormatter.format(std::cout);
+ }
+
+
+ void createMessages()
+ {
+ int i {0};
+ auto& dl = Poco::Logger::get("SQLDemo");
+
+ while (_active)
+ {
+ for (int j = 0; j < 100 && _active; ++j)
+ {
+ dl.debug("%d Informational message", i);
+ ++i;
+ ++_created;
+ }
+ std::this_thread::sleep_for(std::chrono::milliseconds(50));
+ }
+ }
+
+
+ int main(const std::vector& args) override
+ {
+ if (!_helpRequested)
+ {
+ waitForTerminationRequest();
+
+ _active = false;
+ }
+ return Application::EXIT_OK;
+ }
+
+private:
+ bool _helpRequested {false};
+ bool _demoMessagesRequested {false};
+
+ SQLLogInserter _inserter;
+
+ Poco::Timestamp _startTime;
+ bool _active {false};
+
+ std::size_t _created{0};
+ std::thread _sqlSourceThread;
+ std::string _tableName{"T_POCO_LOG"};
+};
+
+
+POCO_SERVER_MAIN(DBLogger)
diff --git a/Data/samples/DBLogger/src/SQLLogInserter.cpp b/Data/samples/DBLogger/src/SQLLogInserter.cpp
new file mode 100644
index 000000000..82948bc5b
--- /dev/null
+++ b/Data/samples/DBLogger/src/SQLLogInserter.cpp
@@ -0,0 +1,257 @@
+//
+// SQLLogInserter.cpp
+//
+// This sample demonstrates the Data library recordset row formatting
+// and streaming capabilities.
+//
+// Copyright (c) 2024, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+
+#include "SQLLogInserter.h"
+
+#include "Poco/Data/DataException.h"
+
+#include
+#include
+#include
+
+
+using namespace Poco::Data::Keywords;
+using namespace std::string_literals;
+
+
+void SQLLogInserter::start()
+{
+ _dataSession = std::make_shared(_connector, _connectionString);
+
+ if (!_dataSession->isGood() || !_dataSession->isConnected())
+ {
+ throw Poco::Data::NotConnectedException("Can't connect to database.");
+ }
+
+ _active = true;
+ _doneProcessing = false;
+
+ _workSet.reserve(MAX_WORKSET_SIZE * 2);
+
+ for (std::size_t i = 0; i < _numWorkers; i++)
+ {
+ _workers.emplace_back(&SQLLogInserter::runProcessingEntries, this);
+ }
+
+ // Thread to scan the directory
+ _dirScanThread = std::thread(&SQLLogInserter::runDirectoryScan, this);
+}
+
+
+void SQLLogInserter::stop()
+{
+ _active = false;
+ _workCondition.notify_all();
+ _underflowCondition.notify_all();
+
+ {
+ std::unique_lock l(_workMutex);
+ while (!_workSet.empty() || !_processingSet.empty())
+ {
+ _completedCondition.wait_for(l, std::chrono::milliseconds(5000));
+ }
+ }
+
+ if (_dirScanThread.joinable())
+ {
+ _dirScanThread.join();
+ }
+
+ // stop all worker threads
+ for (auto& w: _workers)
+ {
+ if (w.joinable()) {
+ w.join();
+ }
+ }
+
+ _dataSession->close();
+}
+
+
+std::size_t SQLLogInserter::insertEntries(std::vector& entries)
+{
+ std::unique_lock l(_workMutex);
+
+ while (_workSet.size() > MAX_WORKSET_SIZE && _active)
+ {
+ // Prevent creating too large work set
+ _underflowCondition.wait_for(l, std::chrono::milliseconds(200));
+ }
+
+ const auto wss = _workSet.size();
+ // Do not re-insert entries that are being processed.
+ entries.erase(
+ std::remove_if(
+ entries.begin(),
+ entries.end(),
+ [this](const std::string& e) {
+ return this->_processingSet.find(e) != this->_processingSet.end();
+ }
+ ),
+ entries.end()
+ );
+
+ _workSet.insert(entries.begin(), entries.end());
+ _workCondition.notify_all();
+ return _workSet.size() - wss;
+}
+
+
+std::string SQLLogInserter::popEntry()
+{
+ std::unique_lock l(_workMutex);
+ while (_workSet.empty() && !_doneProcessing)
+ {
+ _workCondition.wait_for(l, std::chrono::milliseconds(200));
+ }
+ if (_workSet.empty())
+ {
+ // Exited loop because of _doneProcessing
+ return {};
+ }
+ auto entry = (*_workSet.begin());
+ _processingSet.insert(entry);
+ _workSet.erase(_workSet.begin());
+ if (_workSet.size() < MAX_WORKSET_SIZE)
+ {
+ _underflowCondition.notify_all();
+ }
+ return entry;
+}
+
+
+void SQLLogInserter::removeEntry(const std::string& entry)
+{
+ std::unique_lock l(_workMutex);
+ auto i = _processingSet.find(entry);
+ if (i != _processingSet.end())
+ {
+ _processingSet.erase(i);
+ }
+}
+
+
+void SQLLogInserter::processFile(const std::string &entry)
+{
+ if (entry.empty())
+ {
+ return;
+ }
+ if (!std::filesystem::exists(entry))
+ {
+ // Directory iterator can pick up files that were already processed
+ // Ignore such entries.
+ removeEntry(entry);
+ return;
+ }
+ bool success {false};
+ try
+ {
+ const std::ifstream is(entry);
+ std::stringstream buffer;
+ buffer << is.rdbuf();
+ const auto& sql { buffer.str() };
+
+ if (!sql.empty())
+ {
+ auto& s = (*_dataSession);
+
+ s << sql, now;
+
+ ++_processed;
+ success = true;
+ }
+ }
+ catch (const Poco::Exception& e)
+ {
+ // Failed inserting into the database
+ }
+ if (success)
+ {
+ std::filesystem::remove(entry);
+ }
+ else
+ {
+ std::filesystem::path newPath {entry};
+ newPath.replace_extension("err"s);
+ std::filesystem::rename(entry, newPath);
+ }
+ removeEntry(entry);
+}
+
+
+std::size_t SQLLogInserter::scanDirectory()
+{
+ std::vector newEntries;
+ newEntries.reserve(1000);
+ const std::filesystem::directory_iterator diriter(
+ _directory,
+ std::filesystem::directory_options::skip_permission_denied
+ );
+ for (const auto& entry: diriter)
+ {
+ if (_dataSession == nullptr || !_dataSession->isGood())
+ {
+ // Do not process files if database session is not healthy.
+ // Files will be processed later.
+ return 0;
+ }
+
+ if (!std::filesystem::exists(entry))
+ {
+ continue;
+ }
+ if (!entry.is_regular_file())
+ {
+ continue;
+ }
+ if (entry.path().extension() != ".sql"s)
+ {
+ continue;
+ }
+ newEntries.push_back(entry.path().string());
+ }
+ return insertEntries(newEntries);
+}
+
+
+void SQLLogInserter::runDirectoryScan()
+{
+ while (!_doneProcessing)
+ {
+ auto scheduled = scanDirectory();
+ if (!_active && !_doneProcessing)
+ {
+ // Last scan directory to clean up
+ (void)scanDirectory();
+ _doneProcessing = true;
+ _workCondition.notify_all();
+ break;
+ }
+ if (scheduled == 0)
+ {
+ // No new files to be scheduled. Wait a bit.
+ std::this_thread::sleep_for(std::chrono::milliseconds(500));
+ }
+ }
+}
+
+
+void SQLLogInserter::runProcessingEntries()
+{
+ while (!_workSet.empty() || !_doneProcessing)
+ {
+ auto entry = popEntry();
+ processFile(entry);
+ }
+ _completedCondition.notify_all();
+}
diff --git a/Data/samples/DBLogger/src/SQLLogInserter.h b/Data/samples/DBLogger/src/SQLLogInserter.h
new file mode 100644
index 000000000..2308169f4
--- /dev/null
+++ b/Data/samples/DBLogger/src/SQLLogInserter.h
@@ -0,0 +1,134 @@
+//
+// SQLLogInserter.cpp
+//
+// This sample demonstrates the Data library recordset row formatting
+// and streaming capabilities.
+//
+// Copyright (c) 2024, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+
+#ifndef SQLLogInserter_INCLUDED
+#define SQLLogInserter_INCLUDED
+
+#include "Poco/Data/SQLChannel.h"
+
+#include
+#include
+#include
+#include
+
+using namespace Poco::Data::Keywords;
+using namespace std::string_literals;
+
+class SQLLogInserter
+{
+public:
+
+ SQLLogInserter() = default;
+ ~SQLLogInserter() = default;
+
+ void start();
+ void stop();
+
+ void setDirectory(const std::string& directory);
+ std::string directory() const;
+
+ void setConnector(const std::string& connector);
+ std::string connector() const;
+
+ void setConnectionString(const std::string& cs);
+ std::string connectionString() const;
+
+ void setNumWorkers(std::size_t number);
+ std::size_t numWorkers() const;
+
+ std::size_t totalProcessed() const;
+
+private:
+
+ using WorkSet = std::unordered_set;
+
+ std::size_t insertEntries(std::vector& entries);
+ std::string popEntry();
+ void removeEntry(const std::string &entry);
+ void processFile(const std::string& entry);
+ std::size_t scanDirectory();
+
+ void runDirectoryScan();
+ void runProcessingEntries();
+
+ static constexpr std::size_t MAX_WORKSET_SIZE {1000};
+
+ std::string _directory;
+ std::string _connector;
+ std::string _connectionString;
+ std::size_t _numWorkers {2};
+
+ bool _active {false};
+ bool _doneProcessing {false};
+
+ std::size_t _processed{0};
+
+ std::thread _dirScanThread;
+
+ WorkSet _workSet;
+ WorkSet _processingSet;
+ std::mutex _workMutex;
+ std::condition_variable _workCondition;
+ std::condition_variable _underflowCondition;
+ std::condition_variable _completedCondition;
+
+ std::vector _workers;
+
+ Poco::AutoPtr _sqlChannel;
+ std::shared_ptr _dataSession;
+};
+
+inline void SQLLogInserter::setDirectory(const std::string& directory)
+{
+ _directory = directory;
+}
+
+inline std::string SQLLogInserter::directory() const
+{
+ return _directory;
+}
+
+inline void SQLLogInserter::setConnector(const std::string& connector)
+{
+ _connector = connector;
+}
+
+inline std::string SQLLogInserter::connector() const
+{
+ return _connector;
+}
+
+inline void SQLLogInserter::setConnectionString(const std::string& cs)
+{
+ _connectionString = cs;
+}
+
+inline std::string SQLLogInserter::connectionString() const
+{
+ return _connectionString;
+}
+
+inline void SQLLogInserter::setNumWorkers(std::size_t number)
+{
+ _numWorkers = number;
+}
+
+inline std::size_t SQLLogInserter::numWorkers() const
+{
+ return _numWorkers;
+}
+
+inline std::size_t SQLLogInserter::totalProcessed() const
+{
+ return _processed;
+}
+
+#endif // SQLLogInserter_INCLUDED
diff --git a/Data/samples/Makefile b/Data/samples/Makefile
index da7624067..b98c559c0 100644
--- a/Data/samples/Makefile
+++ b/Data/samples/Makefile
@@ -13,3 +13,4 @@ projects:
$(MAKE) -C RowFormatter $(MAKECMDGOALS)
$(MAKE) -C Tuple $(MAKECMDGOALS)
$(MAKE) -C WebNotifier $(MAKECMDGOALS)
+ $(MAKE) -C DBLogger $(MAKECMDGOALS)
diff --git a/Data/samples/samples_vs160.sln b/Data/samples/samples_vs160.sln
index a05a62a4a..bfe2c550f 100644
--- a/Data/samples/samples_vs160.sln
+++ b/Data/samples/samples_vs160.sln
@@ -12,6 +12,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TypeHandler", "TypeHandler\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebNotifier", "WebNotifier\WebNotifier_vs160.vcxproj", "{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DBLogger", "DBLogger\DBLogger_vs160.vcxproj", "{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
debug_shared|Win32 = debug_shared|Win32
diff --git a/Data/samples/samples_vs170.sln b/Data/samples/samples_vs170.sln
index 6f30352e8..7069e022e 100644
--- a/Data/samples/samples_vs170.sln
+++ b/Data/samples/samples_vs170.sln
@@ -1,5 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
+VisualStudioVersion = 17.11.35303.130
+MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Binding", "Binding\Binding_vs170.vcxproj", "{0F0DF069-83D1-378D-A949-8DF9A883B627}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RecordSet", "RecordSet\RecordSet_vs170.vcxproj", "{FEE20DCE-B9E3-30AB-A40C-B6A324997328}"
@@ -12,352 +14,390 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TypeHandler", "TypeHandler\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebNotifier", "WebNotifier\WebNotifier_vs170.vcxproj", "{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DBLogger", "DBLogger\DBLogger_vs170.vcxproj", "{2F659B70-DA60-39DD-A7C8-958805D371F9}"
+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|ARM64 = debug_static_md|ARM64
+ debug_static_md|Win32 = debug_static_md|Win32
debug_static_md|x64 = debug_static_md|x64
+ debug_static_mt|ARM64 = debug_static_mt|ARM64
+ debug_static_mt|Win32 = debug_static_mt|Win32
+ debug_static_mt|x64 = debug_static_mt|x64
+ release_shared|ARM64 = release_shared|ARM64
+ release_shared|Win32 = release_shared|Win32
+ release_shared|x64 = release_shared|x64
+ release_static_md|ARM64 = release_static_md|ARM64
+ release_static_md|Win32 = release_static_md|Win32
release_static_md|x64 = release_static_md|x64
+ release_static_mt|ARM64 = release_static_mt|ARM64
+ release_static_mt|Win32 = release_static_mt|Win32
+ release_static_mt|x64 = release_static_mt|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|Win32.Build.0 = debug_shared|Win32
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.Build.0 = release_shared|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|x64.ActiveCfg = debug_shared|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|x64.Build.0 = debug_shared|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.ActiveCfg = release_shared|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.Build.0 = release_shared|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.Deploy.0 = release_shared|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|x64.Build.0 = debug_static_md|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.Build.0 = release_shared|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.ActiveCfg = release_shared|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.Build.0 = release_shared|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_shared|x64.Deploy.0 = release_shared|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|x64.ActiveCfg = release_static_md|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|x64.Build.0 = release_static_md|x64
{0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {0F0DF069-83D1-378D-A949-8DF9A883B627}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|Win32.Build.0 = debug_shared|Win32
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.Build.0 = release_shared|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|x64.ActiveCfg = debug_shared|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|x64.Build.0 = debug_shared|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.ActiveCfg = release_shared|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.Build.0 = release_shared|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.Deploy.0 = release_shared|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|x64.Build.0 = debug_static_md|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.Build.0 = release_shared|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.ActiveCfg = release_shared|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.Build.0 = release_shared|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_shared|x64.Deploy.0 = release_shared|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|x64.ActiveCfg = release_static_md|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|x64.Build.0 = release_static_md|x64
{FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {FEE20DCE-B9E3-30AB-A40C-B6A324997328}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|Win32.Build.0 = debug_shared|Win32
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.Build.0 = release_shared|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|x64.ActiveCfg = debug_shared|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|x64.Build.0 = debug_shared|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.ActiveCfg = release_shared|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.Build.0 = release_shared|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.Deploy.0 = release_shared|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|x64.Build.0 = debug_static_md|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.Build.0 = release_shared|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.ActiveCfg = release_shared|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.Build.0 = release_shared|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_shared|x64.Deploy.0 = release_shared|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|x64.ActiveCfg = release_static_md|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|x64.Build.0 = release_static_md|x64
{133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {133C62C7-3301-3F43-9ABF-14DF094A042F}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|Win32.Build.0 = debug_shared|Win32
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.Build.0 = release_shared|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|x64.ActiveCfg = debug_shared|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|x64.Build.0 = debug_shared|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.ActiveCfg = release_shared|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.Build.0 = release_shared|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.Deploy.0 = release_shared|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|x64.Build.0 = debug_static_md|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.Build.0 = release_shared|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.ActiveCfg = release_shared|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.Build.0 = release_shared|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_shared|x64.Deploy.0 = release_shared|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|x64.ActiveCfg = release_static_md|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|x64.Build.0 = release_static_md|x64
{F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {F143DA5A-221A-3737-BCBA-F5BFD977038F}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|Win32.Build.0 = debug_shared|Win32
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.Build.0 = release_shared|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|x64.ActiveCfg = debug_shared|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|x64.Build.0 = debug_shared|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.ActiveCfg = release_shared|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.Build.0 = release_shared|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.Deploy.0 = release_shared|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|x64.Build.0 = debug_static_md|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.Build.0 = release_shared|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.ActiveCfg = release_shared|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.Build.0 = release_shared|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_shared|x64.Deploy.0 = release_shared|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|x64.ActiveCfg = release_static_md|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|x64.Build.0 = release_static_md|x64
{65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {65A12348-CA20-324E-9F5E-7F82753C2C65}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|ARM64.Deploy.0 = debug_shared|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.Build.0 = release_shared|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|Win32.Build.0 = debug_shared|Win32
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|Win32.Deploy.0 = debug_shared|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.ActiveCfg = release_shared|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.Build.0 = release_shared|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.Deploy.0 = release_shared|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.Build.0 = release_static_md|Win32
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|x64.ActiveCfg = debug_shared|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|x64.Build.0 = debug_shared|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_shared|x64.Deploy.0 = debug_shared|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.ActiveCfg = release_shared|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.Build.0 = release_shared|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.Deploy.0 = release_shared|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.Build.0 = release_static_mt|x64
- {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|ARM64.Deploy.0 = debug_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|Win32.Deploy.0 = debug_static_md|Win32
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|x64.Build.0 = debug_static_md|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_md|x64.Deploy.0 = debug_static_md|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|ARM64.Deploy.0 = debug_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|Win32.Deploy.0 = debug_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.debug_static_mt|x64.Deploy.0 = debug_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|ARM64.Deploy.0 = release_shared|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.Build.0 = release_shared|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|Win32.Deploy.0 = release_shared|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.ActiveCfg = release_shared|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.Build.0 = release_shared|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_shared|x64.Deploy.0 = release_shared|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|ARM64.Deploy.0 = release_static_md|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|Win32.Deploy.0 = release_static_md|Win32
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|x64.ActiveCfg = release_static_md|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|x64.Build.0 = release_static_md|x64
{BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_md|x64.Deploy.0 = release_static_md|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|ARM64.Deploy.0 = release_static_mt|ARM64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|Win32.Deploy.0 = release_static_mt|Win32
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.Build.0 = release_static_mt|x64
+ {BACF8377-AD61-3B07-9BD5-6AEFCB0EC754}.release_static_mt|x64.Deploy.0 = release_static_mt|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|ARM64.ActiveCfg = debug_shared|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|ARM64.Build.0 = debug_shared|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|Win32.ActiveCfg = debug_shared|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|Win32.Build.0 = debug_shared|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|x64.ActiveCfg = debug_shared|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_shared|x64.Build.0 = debug_shared|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|ARM64.ActiveCfg = debug_static_md|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|ARM64.Build.0 = debug_static_md|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|Win32.ActiveCfg = debug_static_md|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|Win32.Build.0 = debug_static_md|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|x64.ActiveCfg = debug_static_md|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_md|x64.Build.0 = debug_static_md|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|ARM64.ActiveCfg = debug_static_mt|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|ARM64.Build.0 = debug_static_mt|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|Win32.ActiveCfg = debug_static_mt|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|Win32.Build.0 = debug_static_mt|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|x64.ActiveCfg = debug_static_mt|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.debug_static_mt|x64.Build.0 = debug_static_mt|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|ARM64.ActiveCfg = release_shared|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|ARM64.Build.0 = release_shared|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|Win32.ActiveCfg = release_shared|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|Win32.Build.0 = release_shared|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|x64.ActiveCfg = release_shared|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_shared|x64.Build.0 = release_shared|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|ARM64.ActiveCfg = release_static_md|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|ARM64.Build.0 = release_static_md|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|Win32.ActiveCfg = release_static_md|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|Win32.Build.0 = release_static_md|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|x64.ActiveCfg = release_static_md|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_md|x64.Build.0 = release_static_md|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|ARM64.ActiveCfg = release_static_mt|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|ARM64.Build.0 = release_static_mt|ARM64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|Win32.ActiveCfg = release_static_mt|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|Win32.Build.0 = release_static_mt|Win32
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|x64.ActiveCfg = release_static_mt|x64
+ {2F659B70-DA60-39DD-A7C8-958805D371F9}.release_static_mt|x64.Build.0 = release_static_mt|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Foundation/include/Poco/Thread.h b/Foundation/include/Poco/Thread.h
index 00d3da09e..5b7e68b4e 100644
--- a/Foundation/include/Poco/Thread.h
+++ b/Foundation/include/Poco/Thread.h
@@ -161,7 +161,7 @@ public:
/// The Thread ensures that the given target stays
/// alive while the thread is running.
- void start(Callable target, void* pData = 0);
+ void start(Callable target, void* pData = nullptr);
/// Starts the thread with the given target and parameter.
template
diff --git a/Foundation/src/Timestamp.cpp b/Foundation/src/Timestamp.cpp
index 1bfccf613..bf612e7f1 100644
--- a/Foundation/src/Timestamp.cpp
+++ b/Foundation/src/Timestamp.cpp
@@ -133,7 +133,7 @@ void Timestamp::update()
#else
struct timeval tv;
- if (gettimeofday(&tv, NULL))
+ if (gettimeofday(&tv, nullptr))
throw SystemException("cannot get time of day");
_ts = TimeVal(tv.tv_sec)*resolution() + tv.tv_usec;
diff --git a/Makefile b/Makefile
index 7d7ee0d51..8a0ca3b76 100644
--- a/Makefile
+++ b/Makefile
@@ -262,7 +262,7 @@ DataTest-libexec: Data-libexec
Data-tests: Data-libexec DataTest-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Data/testsuite
-Data-samples: Data-libexec Data-libexec Data/SQLite-libexec Net-libexec
+Data-samples: Data-libexec Data-libexec Data/SQLite-libexec Net-libexec Util-libexec
$(MAKE) -C $(POCO_BASE)/Data/samples
Data-clean:
diff --git a/Util/src/ServerApplication.cpp b/Util/src/ServerApplication.cpp
index 1a20db58b..b9560d219 100644
--- a/Util/src/ServerApplication.cpp
+++ b/Util/src/ServerApplication.cpp
@@ -523,7 +523,7 @@ void ServerApplication::waitForTerminationRequest()
}
sigaddset(&sset, SIGQUIT);
sigaddset(&sset, SIGTERM);
- sigprocmask(SIG_BLOCK, &sset, NULL);
+ sigprocmask(SIG_BLOCK, &sset, nullptr);
int sig;
sigwait(&sset, &sig);
terminateCallback();