Cleanup headers and enable MultiProcessorCompilation (#845)

This commit is contained in:
Pavel Krymets 2018-05-29 09:06:21 -07:00 committed by Justin Kotalik
parent 04656d9790
commit 2a467bfd6d
22 changed files with 802 additions and 643 deletions

View File

@ -82,7 +82,7 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile> <PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
<AdditionalIncludeDirectories>..\IISLib;inc;..\CommonLib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\IISLib;.\Inc;..\CommonLib</AdditionalIncludeDirectories>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
@ -96,12 +96,14 @@
<OmitDefaultLibName>true</OmitDefaultLibName> <OmitDefaultLibName>true</OmitDefaultLibName>
<CompileAs>CompileAsCpp</CompileAs> <CompileAs>CompileAsCpp</CompileAs>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link> </Link>
<ResourceCompile> <ResourceCompile>
<AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories>
@ -115,7 +117,7 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile> <PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
<AdditionalIncludeDirectories>..\IISLib;inc;..\CommonLib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\IISLib;.\Inc;..\CommonLib</AdditionalIncludeDirectories>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
@ -128,6 +130,7 @@
<RuntimeTypeInfo>false</RuntimeTypeInfo> <RuntimeTypeInfo>false</RuntimeTypeInfo>
<OmitDefaultLibName>true</OmitDefaultLibName> <OmitDefaultLibName>true</OmitDefaultLibName>
<CompileAs>CompileAsCpp</CompileAs> <CompileAs>CompileAsCpp</CompileAs>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
</ClCompile> </ClCompile>
<Link> <Link>
@ -135,6 +138,7 @@
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link> </Link>
<ResourceCompile> <ResourceCompile>
<AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories>
@ -148,7 +152,7 @@
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\IISLib;inc;..\CommonLib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\IISLib;.\Inc;..\CommonLib</AdditionalIncludeDirectories>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
@ -162,6 +166,7 @@
<OmitDefaultLibName>true</OmitDefaultLibName> <OmitDefaultLibName>true</OmitDefaultLibName>
<CompileAs>CompileAsCpp</CompileAs> <CompileAs>CompileAsCpp</CompileAs>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -170,6 +175,7 @@
<OptimizeReferences>true</OptimizeReferences> <OptimizeReferences>true</OptimizeReferences>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link> </Link>
<ResourceCompile> <ResourceCompile>
<AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories>
@ -184,7 +190,7 @@
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>..\IISLib;inc;..\CommonLib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\IISLib;.\Inc;..\CommonLib</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
<SDLCheck>true</SDLCheck> <SDLCheck>true</SDLCheck>
@ -197,6 +203,7 @@
<OmitDefaultLibName>true</OmitDefaultLibName> <OmitDefaultLibName>true</OmitDefaultLibName>
<CompileAs>CompileAsCpp</CompileAs> <CompileAs>CompileAsCpp</CompileAs>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -205,6 +212,7 @@
<OptimizeReferences>true</OptimizeReferences> <OptimizeReferences>true</OptimizeReferences>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link> </Link>
<ResourceCompile> <ResourceCompile>
<AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\Commonlib</AdditionalIncludeDirectories>
@ -218,7 +226,7 @@
<ClInclude Include="Inc\applicationmanager.h" /> <ClInclude Include="Inc\applicationmanager.h" />
<ClInclude Include="Inc\filewatcher.h" /> <ClInclude Include="Inc\filewatcher.h" />
<ClInclude Include="Inc\proxymodule.h" /> <ClInclude Include="Inc\proxymodule.h" />
<ClInclude Include="Src\precomp.hxx" /> <ClInclude Include="Inc\precomp.hxx" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="Src\applicationinfo.cpp" /> <ClCompile Include="Src\applicationinfo.cpp" />

View File

@ -3,9 +3,17 @@
#pragma once #pragma once
#define API_BUFFER_TOO_SMALL 0x80008098 #include "precomp.hxx"
extern BOOL g_fRecycleProcessCalled; #include "hostfxroptions.h"
#include "appoffline.h"
#include "filewatcher.h"
#include "hashtable.h"
#include "hashfn.h"
#include "aspnetcore_shim_config.h"
#include "iapplication.h"
#define API_BUFFER_TOO_SMALL 0x80008098
typedef typedef
HRESULT HRESULT
@ -16,6 +24,9 @@ HRESULT
_Out_ IAPPLICATION **pApplication _Out_ IAPPLICATION **pApplication
); );
extern BOOL g_fRecycleProcessCalled;
extern PFN_ASPNETCORE_CREATE_APPLICATION g_pfnAspNetCoreCreateApplication;
// //
// The key used for hash-table lookups, consists of the port on which the http process is created. // The key used for hash-table lookups, consists of the port on which the http process is created.
// //
@ -168,6 +179,9 @@ private:
SRWLOCK m_srwLock; SRWLOCK m_srwLock;
IHttpServer *m_pServer; IHttpServer *m_pServer;
PFN_ASPNETCORE_CREATE_APPLICATION m_pfnAspNetCoreCreateApplication; PFN_ASPNETCORE_CREATE_APPLICATION m_pfnAspNetCoreCreateApplication;
static const PCWSTR s_pwzAspnetcoreInProcessRequestHandlerName;
static const PCWSTR s_pwzAspnetcoreOutOfProcessRequestHandlerName;
}; };
class APPLICATION_INFO_HASH : class APPLICATION_INFO_HASH :

View File

@ -3,6 +3,12 @@
#pragma once #pragma once
#include "precomp.hxx"
#include "applicationinfo.h"
#include "multisz.h"
#include "filewatcher.h"
#define DEFAULT_HASH_BUCKETS 17 #define DEFAULT_HASH_BUCKETS 17
// //
@ -133,8 +139,8 @@ public:
private: private:
// //
// we currently limit the size of m_pstrErrorInfo to 5000, be careful if you want to change its payload // we currently limit the size of m_pstrErrorInfo to 5000, be careful if you want to change its payload
// //
APPLICATION_MANAGER() : m_pApplicationInfoHash(NULL), APPLICATION_MANAGER() : m_pApplicationInfoHash(NULL),
m_pFileWatcher(NULL), m_pFileWatcher(NULL),
m_hostingModel(HOSTING_UNKNOWN) m_hostingModel(HOSTING_UNKNOWN)
{ {

View File

@ -2,6 +2,9 @@
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#pragma once #pragma once
#include "precomp.hxx"
class APP_OFFLINE_HTM class APP_OFFLINE_HTM
{ {
public: public:

View File

@ -2,6 +2,9 @@
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#pragma once #pragma once
#include "precomp.hxx"
#define CS_ASPNETCORE_SECTION L"system.webServer/aspNetCore" #define CS_ASPNETCORE_SECTION L"system.webServer/aspNetCore"
#define CS_ASPNETCORE_PROCESS_EXE_PATH L"processPath" #define CS_ASPNETCORE_PROCESS_EXE_PATH L"processPath"
#define CS_ASPNETCORE_PROCESS_ARGUMENTS L"arguments" #define CS_ASPNETCORE_PROCESS_ARGUMENTS L"arguments"

View File

@ -3,6 +3,8 @@
#pragma once #pragma once
#include "precomp.hxx"
#define FILE_WATCHER_SHUTDOWN_KEY (ULONG_PTR)(-1) #define FILE_WATCHER_SHUTDOWN_KEY (ULONG_PTR)(-1)
#define FILE_WATCHER_ENTRY_BUFFER_SIZE 4096 #define FILE_WATCHER_ENTRY_BUFFER_SIZE 4096
#ifndef CONTAINING_RECORD #ifndef CONTAINING_RECORD

View File

@ -3,6 +3,10 @@
#pragma once #pragma once
#include "precomp.hxx"
#include "applicationmanager.h"
class ASPNET_CORE_GLOBAL_MODULE : public CGlobalModule class ASPNET_CORE_GLOBAL_MODULE : public CGlobalModule
{ {

View File

@ -0,0 +1,66 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
#pragma once
#pragma warning( disable : 4091)
//
// System related headers
//
#define WIN32_LEAN_AND_MEAN
#define NTDDI_VERSION 0x06010000
#define WINVER 0x0601
#define _WIN32_WINNT 0x0601
#include <Windows.h>
#include <atlbase.h>
#include <httpserv.h>
#include "stringu.h"
#include "stringa.h"
#include "ntassert.h"
#include "dbgutil.h"
#include "aspnetcore_msg.h"
#include "resources.h"
#include <memory>
FORCEINLINE
DWORD
WIN32_FROM_HRESULT(
HRESULT hr
)
{
if ((FAILED(hr)) &&
(HRESULT_FACILITY(hr) == FACILITY_WIN32))
{
return HRESULT_CODE(hr);
}
return hr;
}
FORCEINLINE
HRESULT
HRESULT_FROM_GETLASTERROR()
{
return ( GetLastError() != NO_ERROR )
? HRESULT_FROM_WIN32( GetLastError() )
: E_FAIL;
}
extern PVOID g_pModuleId;
extern BOOL g_fAspnetcoreRHAssemblyLoaded;
extern BOOL g_fAspnetcoreRHLoadedError;
extern BOOL g_fInShutdown;
extern BOOL g_fEnableReferenceCountTracing;
extern DWORD g_dwActiveServerProcesses;
extern HINSTANCE g_hModule;
extern HMODULE g_hAspnetCoreRH;
extern SRWLOCK g_srwLock;
extern PCWSTR g_pwzAspnetcoreRequestHandlerName;
extern HANDLE g_hEventLog;
#pragma warning( error : 4091)

View File

@ -3,6 +3,11 @@
#pragma once #pragma once
#include "precomp.hxx"
#include "applicationinfo.h"
#include "irequesthandler.h"
extern HTTP_MODULE_ID g_pModuleId; extern HTTP_MODULE_ID g_pModuleId;
extern IHttpServer *g_pHttpServer; extern IHttpServer *g_pHttpServer;
extern HMODULE g_hAspnetCoreRH; extern HMODULE g_hAspnetCoreRH;
@ -61,4 +66,4 @@ class ASPNET_CORE_PROXY_MODULE_FACTORY : public IHttpModuleFactory
VOID VOID
Terminate(); Terminate();
}; };

View File

@ -1,7 +1,14 @@
// Copyright (c) .NET Foundation. All rights reserved. // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "applicationinfo.h"
#include "proxymodule.h"
#include "hostfxr_utility.h"
#include "utility.h"
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreInProcessRequestHandlerName = L"aspnetcorev2_inprocess.dll";
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreOutOfProcessRequestHandlerName = L"aspnetcorev2_outofprocess.dll";
APPLICATION_INFO::~APPLICATION_INFO() APPLICATION_INFO::~APPLICATION_INFO()
{ {
@ -258,11 +265,11 @@ APPLICATION_INFO::FindRequestHandlerAssembly(STRU& location)
if (m_pConfiguration->QueryHostingModel() == APP_HOSTING_MODEL::HOSTING_IN_PROCESS) if (m_pConfiguration->QueryHostingModel() == APP_HOSTING_MODEL::HOSTING_IN_PROCESS)
{ {
pstrHandlerDllName = g_pwzAspnetcoreInProcessRequestHandlerName; pstrHandlerDllName = s_pwzAspnetcoreInProcessRequestHandlerName;
} }
else else
{ {
pstrHandlerDllName = g_pwzAspnetcoreOutOfProcessRequestHandlerName; pstrHandlerDllName = s_pwzAspnetcoreOutOfProcessRequestHandlerName;
} }
// Try to see if RH is already loaded // Try to see if RH is already loaded
@ -272,7 +279,7 @@ APPLICATION_INFO::FindRequestHandlerAssembly(STRU& location)
{ {
if (m_pConfiguration->QueryHostingModel() == APP_HOSTING_MODEL::HOSTING_IN_PROCESS) if (m_pConfiguration->QueryHostingModel() == APP_HOSTING_MODEL::HOSTING_IN_PROCESS)
{ {
std:: unique_ptr<HOSTFXR_OPTIONS> options; std::unique_ptr<HOSTFXR_OPTIONS> options;
if (FAILED(hr = HOSTFXR_OPTIONS::Create( if (FAILED(hr = HOSTFXR_OPTIONS::Create(
NULL, NULL,

View File

@ -1,7 +1,11 @@
// Copyright (c) .NET Foundation. All rights reserved. // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "applicationmanager.h"
#include "proxymodule.h"
#include "utility.h"
#include <memory>
// The application manager is a singleton across ANCM. // The application manager is a singleton across ANCM.
APPLICATION_MANAGER* APPLICATION_MANAGER::sm_pApplicationManager = NULL; APPLICATION_MANAGER* APPLICATION_MANAGER::sm_pApplicationManager = NULL;
@ -32,9 +36,9 @@ APPLICATION_MANAGER::GetOrCreateApplicationInfo(
*ppApplicationInfo = NULL; *ppApplicationInfo = NULL;
// The configuration path is unique for each application and is used for the // The configuration path is unique for each application and is used for the
// key in the applicationInfoHash. // key in the applicationInfoHash.
pszApplicationId = pConfig->QueryConfigPath()->QueryStr(); pszApplicationId = pConfig->QueryConfigPath()->QueryStr();
hr = key.Initialize(pszApplicationId); hr = key.Initialize(pszApplicationId);
if (FAILED(hr)) if (FAILED(hr))
{ {
@ -55,7 +59,7 @@ APPLICATION_MANAGER::GetOrCreateApplicationInfo(
if (*ppApplicationInfo == NULL) if (*ppApplicationInfo == NULL)
{ {
// Check which hosting model we want to support // Check which hosting model we want to support
switch (pConfig->QueryHostingModel()) switch (pConfig->QueryHostingModel())
{ {
case HOSTING_IN_PROCESS: case HOSTING_IN_PROCESS:
@ -210,7 +214,7 @@ APPLICATION_MANAGER::FindConfigChangedApplication(
DBG_ASSERT(pvContext); DBG_ASSERT(pvContext);
// Config Change context contains the original config path that changed // Config Change context contains the original config path that changed
// and a multiStr containing // and a multiStr containing
CONFIG_CHANGE_CONTEXT* pContext = static_cast<CONFIG_CHANGE_CONTEXT*>(pvContext); CONFIG_CHANGE_CONTEXT* pContext = static_cast<CONFIG_CHANGE_CONTEXT*>(pvContext);
STRU* pstruConfigPath = pEntry->QueryConfig()->QueryConfigPath(); STRU* pstruConfigPath = pEntry->QueryConfig()->QueryConfigPath();
@ -245,7 +249,7 @@ APPLICATION_MANAGER::FindConfigChangedApplication(
// This will cause a shutdown event to occur through the global stop listening event. // This will cause a shutdown event to occur through the global stop listening event.
// OutOfProcess: Removes all applications in the application manager and calls Recycle, which will call Shutdown, // OutOfProcess: Removes all applications in the application manager and calls Recycle, which will call Shutdown,
// on each application. // on each application.
// //
HRESULT HRESULT
APPLICATION_MANAGER::RecycleApplicationFromManager( APPLICATION_MANAGER::RecycleApplicationFromManager(
_In_ LPCWSTR pszApplicationId _In_ LPCWSTR pszApplicationId
@ -296,7 +300,7 @@ APPLICATION_MANAGER::RecycleApplicationFromManager(
// Don't call application shutdown inside the lock // Don't call application shutdown inside the lock
m_pApplicationInfoHash->Apply(APPLICATION_INFO_HASH::ReferenceCopyToTable, static_cast<PVOID>(table)); m_pApplicationInfoHash->Apply(APPLICATION_INFO_HASH::ReferenceCopyToTable, static_cast<PVOID>(table));
DBG_ASSERT(dwPreviousCounter == table->Count()); DBG_ASSERT(dwPreviousCounter == table->Count());
// Removed the applications which are impacted by the configurtion change // Removed the applications which are impacted by the configurtion change
m_pApplicationInfoHash->DeleteIf(FindConfigChangedApplication, (PVOID)&context); m_pApplicationInfoHash->DeleteIf(FindConfigChangedApplication, (PVOID)&context);
@ -358,7 +362,7 @@ APPLICATION_MANAGER::RecycleApplicationFromManager(
table->FindKey(&key, &pRecord); table->FindKey(&key, &pRecord);
DBG_ASSERT(pRecord != NULL); DBG_ASSERT(pRecord != NULL);
// RecycleApplication is called on a separate thread. // RecycleApplication is called on a separate thread.
pRecord->RecycleApplication(); pRecord->RecycleApplication();
pRecord->DereferenceApplicationInfo(); pRecord->DereferenceApplicationInfo();
path = context.MultiSz.Next(path); path = context.MultiSz.Next(path);
@ -399,7 +403,7 @@ Finished:
// //
// Shutsdown all applications in the application hashtable // Shutsdown all applications in the application hashtable
// Only called by OnGlobalStopListening. // Only called by OnGlobalStopListening.
// //
VOID VOID
APPLICATION_MANAGER::ShutDown() APPLICATION_MANAGER::ShutDown()
{ {
@ -416,7 +420,7 @@ APPLICATION_MANAGER::ShutDown()
} }
DBG_ASSERT(m_pApplicationInfoHash); DBG_ASSERT(m_pApplicationInfoHash);
// During shutdown we lock until we delete the application // During shutdown we lock until we delete the application
AcquireSRWLockExclusive(&m_srwLock); AcquireSRWLockExclusive(&m_srwLock);
// Call shutdown on each application in the application manager // Call shutdown on each application in the application manager

View File

@ -1,7 +1,11 @@
// Copyright (c) .NET Foundation. All rights reserved. // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "aspnetcore_shim_config.h"
#include "hostfxr_utility.h"
#include "debugutil.h"
#include "ahutil.h"
ASPNETCORE_SHIM_CONFIG::~ASPNETCORE_SHIM_CONFIG() ASPNETCORE_SHIM_CONFIG::~ASPNETCORE_SHIM_CONFIG()
{ {

View File

@ -2,7 +2,13 @@
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "precomp.hxx"
#include <IPHlpApi.h>
#include "applicationinfo.h"
#include "applicationmanager.h"
#include "proxymodule.h"
#include "globalmodule.h"
#include "acache.h"
#include "utility.h"
HTTP_MODULE_ID g_pModuleId = NULL; HTTP_MODULE_ID g_pModuleId = NULL;
IHttpServer * g_pHttpServer = NULL; IHttpServer * g_pHttpServer = NULL;
@ -19,8 +25,6 @@ DWORD g_dwActiveServerProcesses = 0;
SRWLOCK g_srwLock; SRWLOCK g_srwLock;
DWORD g_dwDebugFlags = 0; DWORD g_dwDebugFlags = 0;
PCSTR g_szDebugLabel = "ASPNET_CORE_MODULE"; PCSTR g_szDebugLabel = "ASPNET_CORE_MODULE";
PCWSTR g_pwzAspnetcoreInProcessRequestHandlerName = L"aspnetcorev2_inprocess.dll";
PCWSTR g_pwzAspnetcoreOutOfProcessRequestHandlerName = L"aspnetcorev2_outofprocess.dll";
PFN_ASPNETCORE_CREATE_APPLICATION g_pfnAspNetCoreCreateApplication; PFN_ASPNETCORE_CREATE_APPLICATION g_pfnAspNetCoreCreateApplication;
VOID VOID

View File

@ -1,7 +1,10 @@
// Copyright (c) .NET Foundation. All rights reserved. // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "filewatcher.h"
#include "ntassert.h"
#include "applicationinfo.h"
FILE_WATCHER::FILE_WATCHER() : FILE_WATCHER::FILE_WATCHER() :
m_hCompletionPort(NULL), m_hCompletionPort(NULL),
@ -272,11 +275,11 @@ HRESULT
goto Finished; goto Finished;
} }
// When directory handle is closed then HandleChangeCompletion // When directory handle is closed then HandleChangeCompletion
// happens with cbCompletion = 0 and dwCompletionStatus = 0 // happens with cbCompletion = 0 and dwCompletionStatus = 0
// From documentation it is not clear if that combination // From documentation it is not clear if that combination
// of return values is specific to closing handles or whether // of return values is specific to closing handles or whether
// it could also mean an error condition. Hence we will maintain // it could also mean an error condition. Hence we will maintain
// explicit flag that will help us determine if entry // explicit flag that will help us determine if entry
// is being shutdown (StopMonitor() called) // is being shutdown (StopMonitor() called)
// //
@ -287,8 +290,8 @@ HRESULT
// //
// There could be a FCN overflow // There could be a FCN overflow
// Let assume the file got changed instead of checking files // Let assume the file got changed instead of checking files
// Othersie we have to cache the file info // Othersie we have to cache the file info
// //
if (cbCompletion == 0) if (cbCompletion == 0)
{ {

View File

@ -1,4 +1,7 @@
#include "precomp.hxx" // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
#include "globalmodule.h"
ASPNET_CORE_GLOBAL_MODULE::ASPNET_CORE_GLOBAL_MODULE( ASPNET_CORE_GLOBAL_MODULE::ASPNET_CORE_GLOBAL_MODULE(
APPLICATION_MANAGER* pApplicationManager) APPLICATION_MANAGER* pApplicationManager)

View File

@ -1,160 +1,160 @@
// Copyright (c) .NET Foundation. All rights reserved. // // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // // Licensed under the MIT License. See License.txt in the project root for license information.
#pragma once // #pragma once
#pragma warning( disable : 4091) // #pragma warning( disable : 4091)
// // //
// System related headers // // System related headers
// // //
#define _WINSOCKAPI_ // #define _WINSOCKAPI_
#define NTDDI_VERSION 0x06010000 // #define NTDDI_VERSION 0x06010000
#define WINVER 0x0601 // #define WINVER 0x0601
#define _WIN32_WINNT 0x0601 // #define _WIN32_WINNT 0x0601
#include <windows.h> // #include <windows.h>
#include <atlbase.h> // #include <atlbase.h>
#include <pdh.h> // #include <pdh.h>
//#include <ntassert.h> // //#include <ntassert.h>
#include <Shlobj.h> // #include <Shlobj.h>
#include <httpserv.h> // #include <httpserv.h>
// This should remove our issue of compiling for win7 without header files. // // This should remove our issue of compiling for win7 without header files.
// We force the Windows 8 version check logic in iiswebsocket.h to succeed even though we're compiling for Windows 7. // // We force the Windows 8 version check logic in iiswebsocket.h to succeed even though we're compiling for Windows 7.
// Then, we set the version defines back to Windows 7 to for the remainder of the compilation. // // Then, we set the version defines back to Windows 7 to for the remainder of the compilation.
#undef NTDDI_VERSION // #undef NTDDI_VERSION
#undef WINVER // #undef WINVER
#undef _WIN32_WINNT // #undef _WIN32_WINNT
#define NTDDI_VERSION 0x06020000 // #define NTDDI_VERSION 0x06020000
#define WINVER 0x0602 // #define WINVER 0x0602
#define _WIN32_WINNT 0x0602 // #define _WIN32_WINNT 0x0602
#include <iiswebsocket.h> // #include <iiswebsocket.h>
#undef NTDDI_VERSION // #undef NTDDI_VERSION
#undef WINVER // #undef WINVER
#undef _WIN32_WINNT // #undef _WIN32_WINNT
#define NTDDI_VERSION 0x06010000 // #define NTDDI_VERSION 0x06010000
#define WINVER 0x0601 // #define WINVER 0x0601
#define _WIN32_WINNT 0x0601 // #define _WIN32_WINNT 0x0601
#include <httptrace.h> // #include <httptrace.h>
#include <winhttp.h> // #include <winhttp.h>
#include <cstdlib> // #include <cstdlib>
#include <vector> // #include <vector>
#include <wchar.h> // #include <wchar.h>
// // //
// Option available starting Windows 8. // // Option available starting Windows 8.
// 111 is the value in SDK on May 15, 2012. // // 111 is the value in SDK on May 15, 2012.
// // //
#ifndef WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS // #ifndef WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS
#define WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS 111 // #define WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS 111
#endif // #endif
#ifdef max // #ifdef max
#undef max // #undef max
template<typename T> inline T max(T a, T b) // template<typename T> inline T max(T a, T b)
{ // {
return a > b ? a : b; // return a > b ? a : b;
} // }
#endif // #endif
#ifdef min // #ifdef min
#undef min // #undef min
template<typename T> inline T min(T a, T b) // template<typename T> inline T min(T a, T b)
{ // {
return a < b ? a : b; // return a < b ? a : b;
} // }
#endif // #endif
inline bool IsSpace(char ch) // inline bool IsSpace(char ch)
{ // {
switch(ch) // switch(ch)
{ // {
case 32: // ' ' // case 32: // ' '
case 9: // '\t' // case 9: // '\t'
case 10: // '\n' // case 10: // '\n'
case 13: // '\r' // case 13: // '\r'
case 11: // '\v' // case 11: // '\v'
case 12: // '\f' // case 12: // '\f'
return true; // return true;
default: // default:
return false; // return false;
} // }
} // }
#include <hashfn.h> // #include <hashfn.h>
#include <hashtable.h> // #include <hashtable.h>
#include "stringa.h" // #include "stringa.h"
#include "stringu.h" // #include "stringu.h"
#include "dbgutil.h" // #include "dbgutil.h"
#include "ahutil.h" // #include "ahutil.h"
#include "multisz.h" // #include "multisz.h"
#include "multisza.h" // #include "multisza.h"
#include "base64.h" // #include "base64.h"
#include <listentry.h> // #include <listentry.h>
#include <datetime.h> // #include <datetime.h>
#include <reftrace.h> // #include <reftrace.h>
#include <acache.h> // #include <acache.h>
#include <time.h> // #include <time.h>
#include "environmentvariablehash.h" // #include "environmentvariablehash.h"
#include "hostfxr_utility.h" // #include "hostfxr_utility.h"
#include "utility.h" // #include "utility.h"
#include "debugutil.h" // #include "debugutil.h"
#include "requesthandler.h" // #include "requesthandler.h"
#include "resources.h" // #include "resources.h"
#include "aspnetcore_msg.h" // #include "aspnetcore_msg.h"
//#include "aspnetcore_event.h" // //#include "aspnetcore_event.h"
#include "aspnetcore_shim_config.h" // #include "aspnetcore_shim_config.h"
#include "fx_ver.h" // #include "fx_ver.h"
#include "appoffline.h" // #include "appoffline.h"
#include "filewatcher.h" // #include "filewatcher.h"
#include "applicationinfo.h" // #include "applicationinfo.h"
#include "applicationmanager.h" // #include "applicationmanager.h"
#include "globalmodule.h" // #include "globalmodule.h"
#include "proxymodule.h" // #include "proxymodule.h"
#include "applicationinfo.h" // #include "applicationinfo.h"
#include "hostfxroptions.h" // #include "hostfxroptions.h"
FORCEINLINE // FORCEINLINE
DWORD // DWORD
WIN32_FROM_HRESULT( // WIN32_FROM_HRESULT(
HRESULT hr // HRESULT hr
) // )
{ // {
if ((FAILED(hr)) && // if ((FAILED(hr)) &&
(HRESULT_FACILITY(hr) == FACILITY_WIN32)) // (HRESULT_FACILITY(hr) == FACILITY_WIN32))
{ // {
return HRESULT_CODE(hr); // return HRESULT_CODE(hr);
} // }
return hr; // return hr;
} // }
FORCEINLINE // FORCEINLINE
HRESULT // HRESULT
HRESULT_FROM_GETLASTERROR() // HRESULT_FROM_GETLASTERROR()
{ // {
return ( GetLastError() != NO_ERROR ) // return ( GetLastError() != NO_ERROR )
? HRESULT_FROM_WIN32( GetLastError() ) // ? HRESULT_FROM_WIN32( GetLastError() )
: E_FAIL; // : E_FAIL;
} // }
extern PVOID g_pModuleId; // extern PVOID g_pModuleId;
extern BOOL g_fAspnetcoreRHAssemblyLoaded; // extern BOOL g_fAspnetcoreRHAssemblyLoaded;
extern BOOL g_fAspnetcoreRHLoadedError; // extern BOOL g_fAspnetcoreRHLoadedError;
extern BOOL g_fInShutdown; // extern BOOL g_fInShutdown;
extern BOOL g_fEnableReferenceCountTracing; // extern BOOL g_fEnableReferenceCountTracing;
extern DWORD g_dwActiveServerProcesses; // extern DWORD g_dwActiveServerProcesses;
extern HINSTANCE g_hModule; // extern HINSTANCE g_hModule;
extern HMODULE g_hAspnetCoreRH; // extern HMODULE g_hAspnetCoreRH;
extern SRWLOCK g_srwLock; // extern SRWLOCK g_srwLock;
extern HANDLE g_hEventLog; // extern HANDLE g_hEventLog;
extern PCWSTR g_pwzAspnetcoreInProcessRequestHandlerName; // extern PCWSTR g_pwzAspnetcoreInProcessRequestHandlerName;
extern PCWSTR g_pwzAspnetcoreOutOfProcessRequestHandlerName; // extern PCWSTR g_pwzAspnetcoreOutOfProcessRequestHandlerName;
extern PFN_ASPNETCORE_CREATE_APPLICATION g_pfnAspNetCoreCreateApplication; // extern PFN_ASPNETCORE_CREATE_APPLICATION g_pfnAspNetCoreCreateApplication;
#pragma warning( error : 4091) // #pragma warning( error : 4091)

View File

@ -1,9 +1,14 @@
// Copyright (c) .NET Foundation. All rights reserved. // Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information. // Licensed under the MIT License. See License.txt in the project root for license information.
#include "precomp.hxx" #include "proxymodule.h"
#include "applicationmanager.h"
#include "applicationinfo.h"
#include "acache.h"
#include "hostfxroptions.h" #include "hostfxroptions.h"
__override __override
HRESULT HRESULT
ASPNET_CORE_PROXY_MODULE_FACTORY::GetHttpModule( ASPNET_CORE_PROXY_MODULE_FACTORY::GetHttpModule(
@ -41,7 +46,7 @@ Return value:
--*/ --*/
{ {
/* FORWARDING_HANDLER::StaticTerminate(); /* FORWARDING_HANDLER::StaticTerminate();
WEBSOCKET_HANDLER::StaticTerminate();*/ WEBSOCKET_HANDLER::StaticTerminate();*/
@ -81,7 +86,7 @@ ASPNET_CORE_PROXY_MODULE::OnExecuteRequestHandler(
APPLICATION_MANAGER *pApplicationManager = NULL; APPLICATION_MANAGER *pApplicationManager = NULL;
REQUEST_NOTIFICATION_STATUS retVal = RQ_NOTIFICATION_CONTINUE; REQUEST_NOTIFICATION_STATUS retVal = RQ_NOTIFICATION_CONTINUE;
IAPPLICATION* pApplication = NULL; IAPPLICATION* pApplication = NULL;
STACK_STRU(struFileName, 256); STRU struExeLocation;
if (g_fInShutdown) if (g_fInShutdown)
{ {
@ -123,9 +128,9 @@ ASPNET_CORE_PROXY_MODULE::OnExecuteRequestHandler(
// Set fTrySkipCustomErrors to true as we want client see the offline content // Set fTrySkipCustomErrors to true as we want client see the offline content
pResponse->SetStatus(503, "Service Unavailable", 0, hr, NULL, TRUE); pResponse->SetStatus(503, "Service Unavailable", 0, hr, NULL, TRUE);
pResponse->SetHeader("Content-Type", pResponse->SetHeader("Content-Type",
"text/html", "text/html",
(USHORT)strlen("text/html"), (USHORT)strlen("text/html"),
FALSE FALSE
); );
DataChunk.DataChunkType = HttpDataChunkFromMemory; DataChunk.DataChunkType = HttpDataChunkFromMemory;
@ -158,7 +163,7 @@ ASPNET_CORE_PROXY_MODULE::OnExecuteRequestHandler(
// Create RequestHandler and process the request // Create RequestHandler and process the request
hr = pApplication->CreateHandler(pHttpContext, hr = pApplication->CreateHandler(pHttpContext,
&m_pHandler); &m_pHandler);
if (FAILED(hr)) if (FAILED(hr))
{ {

View File

@ -96,6 +96,7 @@
<ShowIncludes>false</ShowIncludes> <ShowIncludes>false</ShowIncludes>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -116,6 +117,7 @@
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<ShowIncludes>false</ShowIncludes> <ShowIncludes>false</ShowIncludes>
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -136,6 +138,7 @@
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<ShowIncludes>false</ShowIncludes> <ShowIncludes>false</ShowIncludes>
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -160,6 +163,7 @@
</AdditionalUsingDirectories> </AdditionalUsingDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<ShowIncludes>false</ShowIncludes> <ShowIncludes>false</ShowIncludes>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
@ -202,6 +206,11 @@
</ClCompile> </ClCompile>
<ClCompile Include="utility.cxx" /> <ClCompile Include="utility.cxx" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\IISLib\IISLib.vcxproj">
<Project>{4787a64f-9a3e-4867-a55a-70cb4b2b2ffe}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup> <ItemGroup>
<CustomBuild Include="aspnetcore_msg.mc"> <CustomBuild Include="aspnetcore_msg.mc">
<FileType>Document</FileType> <FileType>Document</FileType>
@ -219,11 +228,6 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Filename).rc;%(Filename).h;MSG0409.bin</Outputs> <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Filename).rc;%(Filename).h;MSG0409.bin</Outputs>
</CustomBuild> </CustomBuild>
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\IISLib\IISLib.vcxproj">
<Project>{09d9d1d6-2951-4e14-bc35-76a23cf9391a}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets"> <ImportGroup Label="ExtensionTargets">
</ImportGroup> </ImportGroup>

View File

@ -3,6 +3,10 @@
#pragma once #pragma once
#include "precomp.h"
#include <vector>
typedef INT(*hostfxr_get_native_search_directories_fn) (CONST INT argc, CONST PCWSTR* argv, PWSTR buffer, DWORD buffer_size, DWORD* required_buffer_size); typedef INT(*hostfxr_get_native_search_directories_fn) (CONST INT argc, CONST PCWSTR* argv, PWSTR buffer, DWORD buffer_size, DWORD* required_buffer_size);
typedef INT(*hostfxr_main_fn) (CONST DWORD argc, CONST PCWSTR argv[]); typedef INT(*hostfxr_main_fn) (CONST DWORD argc, CONST PCWSTR argv[]);

View File

@ -3,6 +3,8 @@
#pragma once #pragma once
#include <memory>
class HOSTFXR_OPTIONS class HOSTFXR_OPTIONS
{ {
public: public:

View File

@ -1,201 +1,205 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64"> <ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32"> <ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64"> <ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
</ItemGroup> </ItemGroup>
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<ProjectGuid>{09D9D1D6-2951-4E14-BC35-76A23CF9391A}</ProjectGuid> <ProjectGuid>{09D9D1D6-2951-4E14-BC35-76A23CF9391A}</ProjectGuid>
<Keyword>Win32Proj</Keyword> <Keyword>Win32Proj</Keyword>
<RootNamespace>IISLib</RootNamespace> <RootNamespace>IISLib</RootNamespace>
<ProjectName>IISLib</ProjectName> <ProjectName>IISLib</ProjectName>
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<PropertyGroup Label="UserMacros" /> <PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir> <OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir> <OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir> <OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir> <OutDir>$(MSBuildProjectDirectory)\bin\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup> </PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile> <ClCompile>
<PrecompiledHeader> <PrecompiledHeader>
</PrecompiledHeader> </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> <WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck> <SDLCheck>true</SDLCheck>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<ShowIncludes>false</ShowIncludes> <ShowIncludes>false</ShowIncludes>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
</ClCompile> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<Link> </ClCompile>
<SubSystem>Windows</SubSystem> <Link>
<GenerateDebugInformation>true</GenerateDebugInformation> <SubSystem>Windows</SubSystem>
</Link> <GenerateDebugInformation>true</GenerateDebugInformation>
</ItemDefinitionGroup> </Link>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> </ItemDefinitionGroup>
<ClCompile> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<PrecompiledHeader> <ClCompile>
</PrecompiledHeader> <PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> </PrecompiledHeader>
<Optimization>Disabled</Optimization> <WarningLevel>Level3</WarningLevel>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <SDLCheck>true</SDLCheck>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<ShowIncludes>false</ShowIncludes> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <ShowIncludes>false</ShowIncludes>
</ClCompile> <TreatWarningAsError>true</TreatWarningAsError>
<Link> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<SubSystem>Windows</SubSystem> </ClCompile>
<GenerateDebugInformation>true</GenerateDebugInformation> <Link>
</Link> <SubSystem>Windows</SubSystem>
</ItemDefinitionGroup> <GenerateDebugInformation>true</GenerateDebugInformation>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> </Link>
<ClCompile> </ItemDefinitionGroup>
<WarningLevel>Level3</WarningLevel> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<PrecompiledHeader> <ClCompile>
</PrecompiledHeader> <WarningLevel>Level3</WarningLevel>
<Optimization>MaxSpeed</Optimization> <PrecompiledHeader>
<FunctionLevelLinking>true</FunctionLevelLinking> </PrecompiledHeader>
<IntrinsicFunctions>true</IntrinsicFunctions> <Optimization>MaxSpeed</Optimization>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <FunctionLevelLinking>true</FunctionLevelLinking>
<SDLCheck>true</SDLCheck> <IntrinsicFunctions>true</IntrinsicFunctions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ShowIncludes>false</ShowIncludes> <SDLCheck>true</SDLCheck>
<TreatWarningAsError>true</TreatWarningAsError> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile> <ShowIncludes>false</ShowIncludes>
<Link> <TreatWarningAsError>true</TreatWarningAsError>
<SubSystem>Windows</SubSystem> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<GenerateDebugInformation>true</GenerateDebugInformation> </ClCompile>
<EnableCOMDATFolding>true</EnableCOMDATFolding> <Link>
<OptimizeReferences>true</OptimizeReferences> <SubSystem>Windows</SubSystem>
</Link> <GenerateDebugInformation>true</GenerateDebugInformation>
</ItemDefinitionGroup> <EnableCOMDATFolding>true</EnableCOMDATFolding>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <OptimizeReferences>true</OptimizeReferences>
<ClCompile> </Link>
<WarningLevel>Level3</WarningLevel> </ItemDefinitionGroup>
<PrecompiledHeader> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
</PrecompiledHeader> <ClCompile>
<Optimization>MaxSpeed</Optimization> <WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking> <PrecompiledHeader>
<IntrinsicFunctions>true</IntrinsicFunctions> </PrecompiledHeader>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <Optimization>MaxSpeed</Optimization>
<SDLCheck>true</SDLCheck> <FunctionLevelLinking>true</FunctionLevelLinking>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <IntrinsicFunctions>true</IntrinsicFunctions>
<ShowIncludes>false</ShowIncludes> <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<TreatWarningAsError>true</TreatWarningAsError> <SDLCheck>true</SDLCheck>
</ClCompile> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<Link> <ShowIncludes>false</ShowIncludes>
<SubSystem>Windows</SubSystem> <TreatWarningAsError>true</TreatWarningAsError>
<GenerateDebugInformation>true</GenerateDebugInformation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<EnableCOMDATFolding>true</EnableCOMDATFolding> </ClCompile>
<OptimizeReferences>true</OptimizeReferences> <Link>
</Link> <SubSystem>Windows</SubSystem>
</ItemDefinitionGroup> <GenerateDebugInformation>true</GenerateDebugInformation>
<ItemGroup> <EnableCOMDATFolding>true</EnableCOMDATFolding>
<ClInclude Include="acache.h" /> <OptimizeReferences>true</OptimizeReferences>
<ClInclude Include="ahutil.h" /> </Link>
<ClInclude Include="base64.h" /> </ItemDefinitionGroup>
<ClInclude Include="buffer.h" /> <ItemGroup>
<ClInclude Include="datetime.h" /> <ClInclude Include="acache.h" />
<ClInclude Include="dbgutil.h" /> <ClInclude Include="ahutil.h" />
<ClInclude Include="hashfn.h" /> <ClInclude Include="base64.h" />
<ClInclude Include="hashtable.h" /> <ClInclude Include="buffer.h" />
<ClInclude Include="listentry.h" /> <ClInclude Include="datetime.h" />
<ClInclude Include="macros.h" /> <ClInclude Include="dbgutil.h" />
<ClInclude Include="multisz.h" /> <ClInclude Include="hashfn.h" />
<ClInclude Include="multisza.h" /> <ClInclude Include="hashtable.h" />
<ClInclude Include="ntassert.h" /> <ClInclude Include="listentry.h" />
<ClInclude Include="percpu.h" /> <ClInclude Include="macros.h" />
<ClInclude Include="precomp.h" /> <ClInclude Include="multisz.h" />
<ClInclude Include="prime.h" /> <ClInclude Include="multisza.h" />
<ClInclude Include="pudebug.h" /> <ClInclude Include="ntassert.h" />
<ClInclude Include="reftrace.h" /> <ClInclude Include="percpu.h" />
<ClInclude Include="rwlock.h" /> <ClInclude Include="precomp.h" />
<ClInclude Include="stringa.h" /> <ClInclude Include="prime.h" />
<ClInclude Include="stringu.h" /> <ClInclude Include="pudebug.h" />
<ClInclude Include="tracelog.h" /> <ClInclude Include="reftrace.h" />
<ClInclude Include="treehash.h" /> <ClInclude Include="rwlock.h" />
</ItemGroup> <ClInclude Include="stringa.h" />
<ItemGroup> <ClInclude Include="stringu.h" />
<ClCompile Include="acache.cxx" /> <ClInclude Include="tracelog.h" />
<ClCompile Include="ahutil.cpp" /> <ClInclude Include="treehash.h" />
<ClCompile Include="base64.cpp" /> </ItemGroup>
<ClCompile Include="multisz.cpp" /> <ItemGroup>
<ClCompile Include="multisza.cpp" /> <ClCompile Include="acache.cxx" />
<ClCompile Include="reftrace.c" /> <ClCompile Include="ahutil.cpp" />
<ClCompile Include="stringa.cpp" /> <ClCompile Include="base64.cpp" />
<ClCompile Include="stringu.cpp" /> <ClCompile Include="multisz.cpp" />
<ClCompile Include="tracelog.c" /> <ClCompile Include="multisza.cpp" />
<ClCompile Include="util.cxx" /> <ClCompile Include="reftrace.c" />
</ItemGroup> <ClCompile Include="stringa.cpp" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <ClCompile Include="stringu.cpp" />
<ImportGroup Label="ExtensionTargets"> <ClCompile Include="tracelog.c" />
</ImportGroup> <ClCompile Include="util.cxx" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project> </Project>

View File

@ -1,254 +1,258 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\Build\Build.Settings" /> <Import Project="..\..\..\Build\Build.Settings" />
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32"> <ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64"> <ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64"> <ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
</ItemGroup> </ItemGroup>
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<VCProjectVersion>15.0</VCProjectVersion> <VCProjectVersion>15.0</VCProjectVersion>
<ProjectGuid>{7F87406C-A3C8-4139-A68D-E4C344294A67}</ProjectGuid> <ProjectGuid>{7F87406C-A3C8-4139-A68D-E4C344294A67}</ProjectGuid>
<Keyword>Win32Proj</Keyword> <Keyword>Win32Proj</Keyword>
<RootNamespace>OutOfProcessRequestHandler</RootNamespace> <RootNamespace>OutOfProcessRequestHandler</RootNamespace>
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
<ProjectName>OutOfProcessRequestHandler</ProjectName> <ProjectName>OutOfProcessRequestHandler</ProjectName>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset> <PlatformToolset>v141</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">
</ImportGroup> </ImportGroup>
<ImportGroup Label="Shared"> <ImportGroup Label="Shared">
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<PropertyGroup Label="UserMacros" /> <PropertyGroup Label="UserMacros" />
<PropertyGroup> <PropertyGroup>
<TargetName>aspnetcorev2_outofprocess</TargetName> <TargetName>aspnetcorev2_outofprocess</TargetName>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>false</LinkIncremental> <LinkIncremental>false</LinkIncremental>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>false</LinkIncremental> <LinkIncremental>false</LinkIncremental>
</PropertyGroup> </PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile> <ClCompile>
<PrecompiledHeader>NotUsing</PrecompiledHeader> <PrecompiledHeader>NotUsing</PrecompiledHeader>
<WarningLevel>Level4</WarningLevel> <WarningLevel>Level4</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile> <PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories>
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
<SDLCheck>true</SDLCheck> <SDLCheck>true</SDLCheck>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<PreprocessKeepComments>false</PreprocessKeepComments> <PreprocessKeepComments>false</PreprocessKeepComments>
<ExceptionHandling>SyncCThrow</ExceptionHandling> <ExceptionHandling>SyncCThrow</ExceptionHandling>
<StructMemberAlignment>8Bytes</StructMemberAlignment> <StructMemberAlignment>8Bytes</StructMemberAlignment>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<RuntimeTypeInfo>false</RuntimeTypeInfo> <RuntimeTypeInfo>false</RuntimeTypeInfo>
<OmitDefaultLibName>true</OmitDefaultLibName> <OmitDefaultLibName>true</OmitDefaultLibName>
<CompileAs>CompileAsCpp</CompileAs> <CompileAs>CompileAsCpp</CompileAs>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
</ClCompile> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<Link> </ClCompile>
<SubSystem>Windows</SubSystem> <Link>
<GenerateDebugInformation>true</GenerateDebugInformation> <SubSystem>Windows</SubSystem>
<AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <GenerateDebugInformation>true</GenerateDebugInformation>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
</ItemDefinitionGroup> </Link>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> </ItemDefinitionGroup>
<ClCompile> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<PrecompiledHeader>NotUsing</PrecompiledHeader> <ClCompile>
<WarningLevel>Level4</WarningLevel> <PrecompiledHeader>NotUsing</PrecompiledHeader>
<Optimization>Disabled</Optimization> <WarningLevel>Level4</WarningLevel>
<PreprocessorDefinitions>WIN32;_DEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> <Optimization>Disabled</Optimization>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <PreprocessorDefinitions>WIN32;_DEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<TreatWarningAsError>true</TreatWarningAsError> <AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories>
<SDLCheck>true</SDLCheck> <TreatWarningAsError>true</TreatWarningAsError>
<WholeProgramOptimization>true</WholeProgramOptimization> <SDLCheck>true</SDLCheck>
<PreprocessKeepComments>false</PreprocessKeepComments> <WholeProgramOptimization>true</WholeProgramOptimization>
<ExceptionHandling>SyncCThrow</ExceptionHandling> <PreprocessKeepComments>false</PreprocessKeepComments>
<StructMemberAlignment>8Bytes</StructMemberAlignment> <ExceptionHandling>SyncCThrow</ExceptionHandling>
<FunctionLevelLinking>true</FunctionLevelLinking> <StructMemberAlignment>8Bytes</StructMemberAlignment>
<RuntimeTypeInfo>false</RuntimeTypeInfo> <FunctionLevelLinking>true</FunctionLevelLinking>
<OmitDefaultLibName>true</OmitDefaultLibName> <RuntimeTypeInfo>false</RuntimeTypeInfo>
<CompileAs>CompileAsCpp</CompileAs> <OmitDefaultLibName>true</OmitDefaultLibName>
<IntrinsicFunctions>true</IntrinsicFunctions> <CompileAs>CompileAsCpp</CompileAs>
</ClCompile> <IntrinsicFunctions>true</IntrinsicFunctions>
<Link> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<SubSystem>Windows</SubSystem> </ClCompile>
<GenerateDebugInformation>true</GenerateDebugInformation> <Link>
<AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <SubSystem>Windows</SubSystem>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <GenerateDebugInformation>true</GenerateDebugInformation>
</Link> <AdditionalDependencies>kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</ItemDefinitionGroup> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> </Link>
<ClCompile> </ItemDefinitionGroup>
<WarningLevel>Level4</WarningLevel> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<PrecompiledHeader>NotUsing</PrecompiledHeader> <ClCompile>
<Optimization>MaxSpeed</Optimization> <WarningLevel>Level4</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking> <PrecompiledHeader>NotUsing</PrecompiledHeader>
<IntrinsicFunctions>true</IntrinsicFunctions> <Optimization>MaxSpeed</Optimization>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;REQUESTHANDLER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <IntrinsicFunctions>true</IntrinsicFunctions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;REQUESTHANDLER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<TreatWarningAsError>true</TreatWarningAsError> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<SDLCheck>true</SDLCheck> <AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories>
<WholeProgramOptimization>true</WholeProgramOptimization> <TreatWarningAsError>true</TreatWarningAsError>
<PreprocessKeepComments>false</PreprocessKeepComments> <SDLCheck>true</SDLCheck>
<ExceptionHandling>SyncCThrow</ExceptionHandling> <WholeProgramOptimization>true</WholeProgramOptimization>
<StructMemberAlignment>8Bytes</StructMemberAlignment> <PreprocessKeepComments>false</PreprocessKeepComments>
<FunctionLevelLinking>true</FunctionLevelLinking> <ExceptionHandling>SyncCThrow</ExceptionHandling>
<RuntimeTypeInfo>false</RuntimeTypeInfo> <StructMemberAlignment>8Bytes</StructMemberAlignment>
<OmitDefaultLibName>true</OmitDefaultLibName> <FunctionLevelLinking>true</FunctionLevelLinking>
<CompileAs>CompileAsCpp</CompileAs> <RuntimeTypeInfo>false</RuntimeTypeInfo>
<IntrinsicFunctions>true</IntrinsicFunctions> <OmitDefaultLibName>true</OmitDefaultLibName>
</ClCompile> <CompileAs>CompileAsCpp</CompileAs>
<Link> <IntrinsicFunctions>true</IntrinsicFunctions>
<SubSystem>Windows</SubSystem> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<GenerateDebugInformation>false</GenerateDebugInformation> </ClCompile>
<EnableCOMDATFolding>true</EnableCOMDATFolding> <Link>
<OptimizeReferences>true</OptimizeReferences> <SubSystem>Windows</SubSystem>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <GenerateDebugInformation>false</GenerateDebugInformation>
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies> <EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link> <OptimizeReferences>true</OptimizeReferences>
</ItemDefinitionGroup> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ClCompile> </Link>
<WarningLevel>Level4</WarningLevel> </ItemDefinitionGroup>
<PrecompiledHeader>NotUsing</PrecompiledHeader> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Optimization>MaxSpeed</Optimization> <ClCompile>
<FunctionLevelLinking>true</FunctionLevelLinking> <WarningLevel>Level4</WarningLevel>
<IntrinsicFunctions>true</IntrinsicFunctions> <PrecompiledHeader>NotUsing</PrecompiledHeader>
<PreprocessorDefinitions>NDEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> <Optimization>MaxSpeed</Optimization>
<PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile> <FunctionLevelLinking>true</FunctionLevelLinking>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories> <PreprocessorDefinitions>NDEBUG;REQUESTHANDLER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<TreatWarningAsError>true</TreatWarningAsError> <PrecompiledHeaderFile>precomp.hxx</PrecompiledHeaderFile>
<SDLCheck>true</SDLCheck> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<WholeProgramOptimization>true</WholeProgramOptimization> <AdditionalIncludeDirectories>..\IISLib;..\CommonLib;.\Inc</AdditionalIncludeDirectories>
<PreprocessKeepComments>false</PreprocessKeepComments> <TreatWarningAsError>true</TreatWarningAsError>
<ExceptionHandling>SyncCThrow</ExceptionHandling> <SDLCheck>true</SDLCheck>
<StructMemberAlignment>8Bytes</StructMemberAlignment> <WholeProgramOptimization>true</WholeProgramOptimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <PreprocessKeepComments>false</PreprocessKeepComments>
<RuntimeTypeInfo>false</RuntimeTypeInfo> <ExceptionHandling>SyncCThrow</ExceptionHandling>
<OmitDefaultLibName>true</OmitDefaultLibName> <StructMemberAlignment>8Bytes</StructMemberAlignment>
<CompileAs>CompileAsCpp</CompileAs> <FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions> <RuntimeTypeInfo>false</RuntimeTypeInfo>
</ClCompile> <OmitDefaultLibName>true</OmitDefaultLibName>
<Link> <CompileAs>CompileAsCpp</CompileAs>
<SubSystem>Windows</SubSystem> <IntrinsicFunctions>true</IntrinsicFunctions>
<GenerateDebugInformation>false</GenerateDebugInformation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<EnableCOMDATFolding>true</EnableCOMDATFolding> </ClCompile>
<OptimizeReferences>true</OptimizeReferences> <Link>
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile> <SubSystem>Windows</SubSystem>
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies> <GenerateDebugInformation>false</GenerateDebugInformation>
</Link> <EnableCOMDATFolding>true</EnableCOMDATFolding>
</ItemDefinitionGroup> <OptimizeReferences>true</OptimizeReferences>
<ItemGroup> <ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
<ClInclude Include="aspnetcore_event.h" /> <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ClInclude Include="disconnectcontext.h" /> </Link>
<ClInclude Include="environmentvariablehelpers.h" /> </ItemDefinitionGroup>
<ClInclude Include="sttimer.h" /> <ItemGroup>
<ClInclude Include="outofprocess\forwarderconnection.h" /> <ClInclude Include="aspnetcore_event.h" />
<ClInclude Include="outofprocess\processmanager.h" /> <ClInclude Include="disconnectcontext.h" />
<ClInclude Include="outofprocess\protocolconfig.h" /> <ClInclude Include="environmentvariablehelpers.h" />
<ClInclude Include="outofprocess\responseheaderhash.h" /> <ClInclude Include="sttimer.h" />
<ClInclude Include="outofprocess\serverprocess.h" /> <ClInclude Include="outofprocess\forwarderconnection.h" />
<ClInclude Include="outofprocess\websockethandler.h" /> <ClInclude Include="outofprocess\processmanager.h" />
<ClInclude Include="outofprocess\winhttphelper.h" /> <ClInclude Include="outofprocess\protocolconfig.h" />
<ClInclude Include="precomp.hxx" /> <ClInclude Include="outofprocess\responseheaderhash.h" />
<ClInclude Include=".\outofprocess\forwardinghandler.h" /> <ClInclude Include="outofprocess\serverprocess.h" />
<ClInclude Include=".\outofprocess\outprocessapplication.h" /> <ClInclude Include="outofprocess\websockethandler.h" />
</ItemGroup> <ClInclude Include="outofprocess\winhttphelper.h" />
<ItemGroup> <ClInclude Include="precomp.hxx" />
<ClCompile Include="dllmain.cxx" /> <ClInclude Include=".\outofprocess\forwardinghandler.h" />
<ClCompile Include=".\outofprocess\forwardinghandler.cpp" /> <ClInclude Include=".\outofprocess\outprocessapplication.h" />
<ClCompile Include=".\outofprocess\outprocessapplication.cpp" /> </ItemGroup>
<ClCompile Include="outofprocess\forwarderconnection.cxx" /> <ItemGroup>
<ClCompile Include="outofprocess\processmanager.cxx" /> <ClCompile Include="dllmain.cxx" />
<ClCompile Include="outofprocess\protocolconfig.cxx" /> <ClCompile Include=".\outofprocess\forwardinghandler.cpp" />
<ClCompile Include="outofprocess\responseheaderhash.cxx" /> <ClCompile Include=".\outofprocess\outprocessapplication.cpp" />
<ClCompile Include="outofprocess\serverprocess.cxx" /> <ClCompile Include="outofprocess\forwarderconnection.cxx" />
<ClCompile Include="outofprocess\websockethandler.cxx" /> <ClCompile Include="outofprocess\processmanager.cxx" />
<ClCompile Include="outofprocess\winhttphelper.cxx" /> <ClCompile Include="outofprocess\protocolconfig.cxx" />
</ItemGroup> <ClCompile Include="outofprocess\responseheaderhash.cxx" />
<ItemGroup> <ClCompile Include="outofprocess\serverprocess.cxx" />
<ProjectReference Include="..\CommonLib\CommonLib.vcxproj"> <ClCompile Include="outofprocess\websockethandler.cxx" />
<Project>{55494e58-e061-4c4c-a0a8-837008e72f85}</Project> <ClCompile Include="outofprocess\winhttphelper.cxx" />
</ProjectReference> </ItemGroup>
<ProjectReference Include="..\IISLib\IISLib.vcxproj"> <ItemGroup>
<Project>{4787a64f-9a3e-4867-a55a-70cb4b2b2ffe}</Project> <ProjectReference Include="..\CommonLib\CommonLib.vcxproj">
</ProjectReference> <Project>{55494e58-e061-4c4c-a0a8-837008e72f85}</Project>
</ItemGroup> </ProjectReference>
<ItemGroup> <ProjectReference Include="..\IISLib\IISLib.vcxproj">
<ResourceCompile Include="outofprocessrequesthandler.rc" /> <Project>{4787a64f-9a3e-4867-a55a-70cb4b2b2ffe}</Project>
</ItemGroup> </ProjectReference>
<ItemGroup> </ItemGroup>
<None Include="Source.def" /> <ItemGroup>
</ItemGroup> <ResourceCompile Include="outofprocessrequesthandler.rc" />
<Import Project="..\..\..\build\native.targets" /> </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <ItemGroup>
<ImportGroup Label="ExtensionTargets"> <None Include="Source.def" />
</ImportGroup> </ItemGroup>
<Import Project="..\..\..\build\native.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project> </Project>