Reenable precompiled headers in AspNetCore project (#937)
This commit is contained in:
parent
d7bcb19c79
commit
93de3f83ce
|
|
@ -76,7 +76,6 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
|
@ -98,6 +97,7 @@
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>precomp.hxx</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -112,7 +112,6 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;ASPNETCOREMODULE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
|
@ -134,6 +133,7 @@
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>precomp.hxx</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -170,6 +170,7 @@
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>precomp.hxx</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -208,6 +209,7 @@
|
||||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>precomp.hxx</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -239,6 +241,12 @@
|
||||||
<ClCompile Include="Src\dllmain.cpp" />
|
<ClCompile Include="Src\dllmain.cpp" />
|
||||||
<ClCompile Include="Src\filewatcher.cxx" />
|
<ClCompile Include="Src\filewatcher.cxx" />
|
||||||
<ClCompile Include="src\globalmodule.cpp" />
|
<ClCompile Include="src\globalmodule.cpp" />
|
||||||
|
<ClCompile Include="src\precomp.cpp">
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="Src\proxymodule.cxx" />
|
<ClCompile Include="Src\proxymodule.cxx" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
#include <httpserv.h>
|
||||||
|
|
||||||
#include "hostfxroptions.h"
|
#include "hostfxroptions.h"
|
||||||
#include "appoffline.h"
|
#include "appoffline.h"
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
#include "aspnetcore_shim_config.h"
|
#include "aspnetcore_shim_config.h"
|
||||||
#include "iapplication.h"
|
#include "iapplication.h"
|
||||||
#include "SRWSharedLock.h"
|
#include "SRWSharedLock.h"
|
||||||
|
#include "ntassert.h"
|
||||||
|
|
||||||
#define API_BUFFER_TOO_SMALL 0x80008098
|
#define API_BUFFER_TOO_SMALL 0x80008098
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
|
||||||
|
|
||||||
#include "applicationinfo.h"
|
#include "applicationinfo.h"
|
||||||
#include "multisz.h"
|
#include "multisz.h"
|
||||||
#include "filewatcher.h"
|
#include "filewatcher.h"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
#include "stringa.h"
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
class APP_OFFLINE_HTM
|
class APP_OFFLINE_HTM
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,10 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
#include <windows.h>
|
||||||
#include <map>
|
#include <httpserv.h>
|
||||||
|
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
#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"
|
||||||
|
|
|
||||||
|
|
@ -3,20 +3,12 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
#include <windows.h>
|
||||||
|
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
#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
|
|
||||||
//
|
|
||||||
// Calculate the address of the base of the structure given its type, and an
|
|
||||||
// address of a field within the structure.
|
|
||||||
//
|
|
||||||
|
|
||||||
#define CONTAINING_RECORD(address, type, field) \
|
|
||||||
((type *)((PCHAR)(address)-(ULONG_PTR)(&((type *)0)->field)))
|
|
||||||
|
|
||||||
#endif // !CONTAINING_RECORD
|
|
||||||
#define FILE_NOTIFY_VALID_MASK 0x00000fff
|
#define FILE_NOTIFY_VALID_MASK 0x00000fff
|
||||||
#define FILE_WATCHER_ENTRY_SIGNATURE ((DWORD) 'FWES')
|
#define FILE_WATCHER_ENTRY_SIGNATURE ((DWORD) 'FWES')
|
||||||
#define FILE_WATCHER_ENTRY_SIGNATURE_FREE ((DWORD) 'sewf')
|
#define FILE_WATCHER_ENTRY_SIGNATURE_FREE ((DWORD) 'sewf')
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
|
||||||
|
|
||||||
#include "applicationmanager.h"
|
#include "applicationmanager.h"
|
||||||
|
|
||||||
class ASPNET_CORE_GLOBAL_MODULE : public CGlobalModule
|
class ASPNET_CORE_GLOBAL_MODULE : public CGlobalModule
|
||||||
|
|
|
||||||
|
|
@ -16,40 +16,8 @@
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
#include <atlbase.h>
|
#include <atlbase.h>
|
||||||
#include <httpserv.h>
|
#include <httpserv.h>
|
||||||
|
|
||||||
#include "stringu.h"
|
#include "stringu.h"
|
||||||
#include "stringa.h"
|
#include "stringu.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 PVOID g_pModuleId;
|
||||||
extern BOOL g_fAspnetcoreRHAssemblyLoaded;
|
extern BOOL g_fAspnetcoreRHAssemblyLoaded;
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
|
||||||
|
|
||||||
#include "applicationinfo.h"
|
#include "applicationinfo.h"
|
||||||
#include "irequesthandler.h"
|
#include "irequesthandler.h"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,9 @@
|
||||||
#include "hostfxr_utility.h"
|
#include "hostfxr_utility.h"
|
||||||
#include "utility.h"
|
#include "utility.h"
|
||||||
#include "debugutil.h"
|
#include "debugutil.h"
|
||||||
|
#include "resources.h"
|
||||||
|
#include "SRWExclusiveLock.h"
|
||||||
|
#include "GlobalVersionUtility.h"
|
||||||
|
|
||||||
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreInProcessRequestHandlerName = L"aspnetcorev2_inprocess.dll";
|
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreInProcessRequestHandlerName = L"aspnetcorev2_inprocess.dll";
|
||||||
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreOutOfProcessRequestHandlerName = L"aspnetcorev2_outofprocess.dll";
|
const PCWSTR APPLICATION_INFO::s_pwzAspnetcoreOutOfProcessRequestHandlerName = L"aspnetcorev2_outofprocess.dll";
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,12 @@
|
||||||
// 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 <memory>
|
|
||||||
#include "applicationmanager.h"
|
#include "applicationmanager.h"
|
||||||
|
|
||||||
#include "proxymodule.h"
|
#include "proxymodule.h"
|
||||||
#include "utility.h"
|
#include "utility.h"
|
||||||
|
#include "resources.h"
|
||||||
|
#include "SRWExclusiveLock.h"
|
||||||
|
|
||||||
// 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;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@
|
||||||
|
|
||||||
#include "config_utility.h"
|
#include "config_utility.h"
|
||||||
#include "hostfxr_utility.h"
|
#include "hostfxr_utility.h"
|
||||||
#include "debugutil.h"
|
|
||||||
#include "ahutil.h"
|
#include "ahutil.h"
|
||||||
|
|
||||||
ASPNETCORE_SHIM_CONFIG::~ASPNETCORE_SHIM_CONFIG()
|
ASPNETCORE_SHIM_CONFIG::~ASPNETCORE_SHIM_CONFIG()
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
||||||
// 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 "applicationinfo.h"
|
||||||
#include "applicationmanager.h"
|
#include "applicationmanager.h"
|
||||||
#include "proxymodule.h"
|
#include "proxymodule.h"
|
||||||
|
|
@ -10,6 +8,8 @@
|
||||||
#include "acache.h"
|
#include "acache.h"
|
||||||
#include "utility.h"
|
#include "utility.h"
|
||||||
#include "debugutil.h"
|
#include "debugutil.h"
|
||||||
|
#include "resources.h"
|
||||||
|
#include "exceptions.h"
|
||||||
|
|
||||||
DECLARE_DEBUG_PRINT_OBJECT("aspnetcore.dll");
|
DECLARE_DEBUG_PRINT_OBJECT("aspnetcore.dll");
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||||
|
|
||||||
|
// Do not remove this file. It is used for precompiled header generation
|
||||||
|
|
@ -7,7 +7,6 @@
|
||||||
#include "applicationinfo.h"
|
#include "applicationinfo.h"
|
||||||
#include "acache.h"
|
#include "acache.h"
|
||||||
#include "exceptions.h"
|
#include "exceptions.h"
|
||||||
|
|
||||||
__override
|
__override
|
||||||
HRESULT
|
HRESULT
|
||||||
ASPNET_CORE_PROXY_MODULE_FACTORY::GetHttpModule(
|
ASPNET_CORE_PROXY_MODULE_FACTORY::GetHttpModule(
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<TreatWarningAsError>true</TreatWarningAsError>
|
<TreatWarningAsError>true</TreatWarningAsError>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
|
|
@ -100,6 +100,7 @@
|
||||||
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>stdafx.h</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -108,7 +109,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<TreatWarningAsError>true</TreatWarningAsError>
|
<TreatWarningAsError>true</TreatWarningAsError>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
|
|
@ -124,6 +125,7 @@
|
||||||
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>stdafx.h</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -132,7 +134,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<TreatWarningAsError>true</TreatWarningAsError>
|
<TreatWarningAsError>true</TreatWarningAsError>
|
||||||
<Optimization>MaxSpeed</Optimization>
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
|
@ -148,6 +150,7 @@
|
||||||
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>..\iislib;</AdditionalIncludeDirectories>
|
||||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>stdafx.h</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -158,7 +161,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
<TreatWarningAsError>true</TreatWarningAsError>
|
<TreatWarningAsError>true</TreatWarningAsError>
|
||||||
<Optimization>MaxSpeed</Optimization>
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
|
@ -176,6 +179,7 @@
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
<ShowIncludes>false</ShowIncludes>
|
<ShowIncludes>false</ShowIncludes>
|
||||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||||
|
<ForcedIncludeFiles>stdafx.h</ForcedIncludeFiles>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
|
@ -215,6 +219,12 @@
|
||||||
<ClCompile Include="hostfxroptions.cpp" />
|
<ClCompile Include="hostfxroptions.cpp" />
|
||||||
<ClCompile Include="SRWExclusiveLock.cpp" />
|
<ClCompile Include="SRWExclusiveLock.cpp" />
|
||||||
<ClCompile Include="SRWSharedLock.cpp" />
|
<ClCompile Include="SRWSharedLock.cpp" />
|
||||||
|
<ClCompile Include="stdafx.cpp">
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
|
||||||
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="utility.cxx" />
|
<ClCompile Include="utility.cxx" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -3,4 +3,7 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include "Utility.h"
|
||||||
|
#include "resources.h"
|
||||||
|
|
||||||
#define EVENTLOG(log, name, ...) UTILITY::LogEventF(log, ASPNETCORE_EVENT_ ## name ## _LEVEL, ASPNETCORE_EVENT_ ## name, ASPNETCORE_EVENT_ ## name ## _MSG, __VA_ARGS__)
|
#define EVENTLOG(log, name, ...) UTILITY::LogEventF(log, ASPNETCORE_EVENT_ ## name ## _LEVEL, ASPNETCORE_EVENT_ ## name, ASPNETCORE_EVENT_ ## name ## _MSG, __VA_ARGS__)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,10 @@
|
||||||
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
||||||
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include <Windows.h>
|
||||||
|
#include <experimental/filesystem>
|
||||||
|
|
||||||
|
#include "GlobalVersionUtility.h"
|
||||||
|
|
||||||
namespace fs = std::experimental::filesystem;
|
namespace fs = std::experimental::filesystem;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,8 @@
|
||||||
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#include <experimental/filesystem>
|
|
||||||
|
#include "fx_ver.h"
|
||||||
|
|
||||||
class GlobalVersionUtility
|
class GlobalVersionUtility
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
// 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 "stdafx.h"
|
|
||||||
#include "SRWExclusiveLock.h"
|
#include "SRWExclusiveLock.h"
|
||||||
|
|
||||||
SRWExclusiveLock:: SRWExclusiveLock(const SRWLOCK& lock)
|
SRWExclusiveLock:: SRWExclusiveLock(const SRWLOCK& lock)
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <synchapi.h>
|
||||||
|
|
||||||
class SRWExclusiveLock
|
class SRWExclusiveLock
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
// 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 "stdafx.h"
|
|
||||||
#include "SRWSharedLock.h"
|
#include "SRWSharedLock.h"
|
||||||
|
|
||||||
SRWSharedLock:: SRWSharedLock(const SRWLOCK& lock)
|
SRWSharedLock:: SRWSharedLock(const SRWLOCK& lock)
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <synchapi.h>
|
||||||
|
|
||||||
class SRWSharedLock
|
class SRWSharedLock
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "iapplication.h"
|
||||||
|
#include "ntassert.h"
|
||||||
|
|
||||||
class APPLICATION : public IAPPLICATION
|
class APPLICATION : public IAPPLICATION
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,9 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include <httpserv.h>
|
||||||
|
#include "ahutil.h"
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
class ConfigUtility
|
class ConfigUtility
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,12 @@
|
||||||
// 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 "stdafx.h"
|
|
||||||
|
|
||||||
#include "debugutil.h"
|
#include "debugutil.h"
|
||||||
|
|
||||||
|
#include <string>
|
||||||
#include "dbgutil.h"
|
#include "dbgutil.h"
|
||||||
|
#include "stringu.h"
|
||||||
|
#include "stringa.h"
|
||||||
|
|
||||||
inline HANDLE g_hStandardOutput;
|
inline HANDLE g_hStandardOutput;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
|
#include "dbgutil.h"
|
||||||
|
|
||||||
#define ASPNETCORE_DEBUG_FLAG_INFO DEBUG_FLAG_INFO
|
#define ASPNETCORE_DEBUG_FLAG_INFO DEBUG_FLAG_INFO
|
||||||
#define ASPNETCORE_DEBUG_FLAG_WARNING DEBUG_FLAG_WARN
|
#define ASPNETCORE_DEBUG_FLAG_WARNING DEBUG_FLAG_WARN
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,11 @@
|
||||||
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
||||||
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "fx_ver.h"
|
||||||
|
|
||||||
|
#include <Windows.h>
|
||||||
|
#include <sstream>
|
||||||
|
#include <cassert>
|
||||||
|
|
||||||
fx_ver_t::fx_ver_t(int major, int minor, int patch, const std::wstring& pre, const std::wstring& build)
|
fx_ver_t::fx_ver_t(int major, int minor, int patch, const std::wstring& pre, const std::wstring& build)
|
||||||
: m_major(major)
|
: m_major(major)
|
||||||
|
|
@ -189,4 +193,4 @@ bool fx_ver_t::parse(const std::wstring& ver, fx_ver_t* fx_ver, bool parse_only_
|
||||||
bool valid = parse_internal(ver, fx_ver, parse_only_production);
|
bool valid = parse_internal(ver, fx_ver, parse_only_production);
|
||||||
assert(!valid || fx_ver->as_str() == ver);
|
assert(!valid || fx_ver->as_str() == ver);
|
||||||
return valid;
|
return valid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
// Note: This is not SemVer (esp., in comparing pre-release part, fx_ver_t does not
|
// Note: This is not SemVer (esp., in comparing pre-release part, fx_ver_t does not
|
||||||
// compare multiple dot separated identifiers individually.) ex: 1.0.0-beta.2 vs. 1.0.0-beta.11
|
// compare multiple dot separated identifiers individually.) ex: 1.0.0-beta.2 vs. 1.0.0-beta.11
|
||||||
struct fx_ver_t
|
struct fx_ver_t
|
||||||
|
|
@ -22,8 +24,6 @@ struct fx_ver_t
|
||||||
bool is_prerelease() const { return !m_pre.empty(); }
|
bool is_prerelease() const { return !m_pre.empty(); }
|
||||||
|
|
||||||
std::wstring as_str() const;
|
std::wstring as_str() const;
|
||||||
std::wstring prerelease_glob() const;
|
|
||||||
std::wstring patch_glob() const;
|
|
||||||
|
|
||||||
bool operator ==(const fx_ver_t& b) const;
|
bool operator ==(const fx_ver_t& b) const;
|
||||||
bool operator !=(const fx_ver_t& b) const;
|
bool operator !=(const fx_ver_t& b) const;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
// 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 "stdafx.h"
|
#include "hostfxr_utility.h"
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include "EventLog.h"
|
||||||
|
#include "ntassert.h"
|
||||||
|
#include "fx_ver.h"
|
||||||
|
|
||||||
namespace fs = std::experimental::filesystem;
|
namespace fs = std::experimental::filesystem;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.h"
|
#include <Windows.h>
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <experimental/filesystem>
|
#include <experimental/filesystem>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
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[]);
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
// 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 "stdafx.h"
|
#include "hostfxroptions.h"
|
||||||
|
|
||||||
|
#include "hostfxr_utility.h"
|
||||||
|
|
||||||
HRESULT HOSTFXR_OPTIONS::Create(
|
HRESULT HOSTFXR_OPTIONS::Create(
|
||||||
_In_ PCWSTR pcwzExeLocation,
|
_In_ PCWSTR pcwzExeLocation,
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,11 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <Windows.h>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
class HOSTFXR_OPTIONS
|
class HOSTFXR_OPTIONS
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
class IREQUEST_HANDLER;
|
#include "irequesthandler.h"
|
||||||
|
|
||||||
enum APPLICATION_STATUS
|
enum APPLICATION_STATUS
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <httpserv.h>
|
||||||
|
|
||||||
//
|
//
|
||||||
// Pure abstract class
|
// Pure abstract class
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "irequesthandler.h"
|
||||||
|
#include "ntassert.h"
|
||||||
|
|
||||||
//
|
//
|
||||||
// Pure abstract class
|
// Pure abstract class
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include "aspnetcore_msg.h"
|
||||||
|
|
||||||
#define IDS_INVALID_PROPERTY 1000
|
#define IDS_INVALID_PROPERTY 1000
|
||||||
#define IDS_SERVER_ERROR 1001
|
#define IDS_SERVER_ERROR 1001
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||||
|
|
||||||
|
// Do not remove this file. It is used for precompiled header generation
|
||||||
|
|
@ -9,35 +9,9 @@
|
||||||
|
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
#include <httpserv.h>
|
#include <httpserv.h>
|
||||||
#include <wchar.h>
|
#include <cwchar>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <shellapi.h>
|
#include <shellapi.h>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <experimental/filesystem>
|
#include <experimental/filesystem>
|
||||||
|
|
||||||
#include "Shlwapi.h"
|
|
||||||
#include <io.h>
|
|
||||||
#include "hashtable.h"
|
|
||||||
#include "stringu.h"
|
|
||||||
#include "stringa.h"
|
|
||||||
#include "multisz.h"
|
|
||||||
#include "dbgutil.h"
|
|
||||||
#include "ahutil.h"
|
|
||||||
#include "hashfn.h"
|
|
||||||
#include "sttimer.h"
|
|
||||||
#include "irequesthandler.h"
|
|
||||||
#include "sttimer.h"
|
|
||||||
#include "requesthandler.h"
|
|
||||||
#include "iapplication.h"
|
|
||||||
#include "application.h"
|
|
||||||
#include "SRWExclusiveLock.h"
|
|
||||||
#include "fx_ver.h"
|
|
||||||
#include "utility.h"
|
|
||||||
#include "GlobalVersionUtility.h"
|
|
||||||
#include "resources.h"
|
|
||||||
#include "aspnetcore_msg.h"
|
|
||||||
#include "hostfxr_utility.h"
|
|
||||||
#include "EventLog.h"
|
|
||||||
#include "hostfxroptions.h"
|
|
||||||
#include "exceptions.h"
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "stdafx.h"
|
|
||||||
|
|
||||||
#ifndef _STTIMER_H
|
#ifndef _STTIMER_H
|
||||||
#define _STTIMER_H
|
#define _STTIMER_H
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
// 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 "stdafx.h"
|
#include "utility.h"
|
||||||
|
|
||||||
|
#include <Shlwapi.h>
|
||||||
#include "debugutil.h"
|
#include "debugutil.h"
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,10 @@
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
|
||||||
|
#include <httpserv.h>
|
||||||
|
#include "stringa.h"
|
||||||
|
#include "stringu.h"
|
||||||
|
|
||||||
class UTILITY
|
class UTILITY
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -255,4 +255,4 @@ FindNextLocationElement(
|
||||||
|
|
||||||
HRESULT GetSharedConfigEnabled(
|
HRESULT GetSharedConfigEnabled(
|
||||||
BOOL * pfIsSharedConfig
|
BOOL * pfIsSharedConfig
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -8,9 +8,9 @@
|
||||||
#include <VersionHelpers.h>
|
#include <VersionHelpers.h>
|
||||||
|
|
||||||
#include "inprocessapplication.h"
|
#include "inprocessapplication.h"
|
||||||
#include "inprocesshandler.h"
|
|
||||||
#include "requesthandler_config.h"
|
#include "requesthandler_config.h"
|
||||||
#include "debugutil.h"
|
#include "debugutil.h"
|
||||||
|
#include "resources.h"
|
||||||
|
|
||||||
DECLARE_DEBUG_PRINT_OBJECT("aspnetcorev2_inprocess.dll");
|
DECLARE_DEBUG_PRINT_OBJECT("aspnetcorev2_inprocess.dll");
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,9 @@
|
||||||
#include "requesthandler_config.h"
|
#include "requesthandler_config.h"
|
||||||
#include "environmentvariablehelpers.h"
|
#include "environmentvariablehelpers.h"
|
||||||
#include "aspnetcore_event.h"
|
#include "aspnetcore_event.h"
|
||||||
|
#include "utility.h"
|
||||||
|
#include "EventLog.h"
|
||||||
|
#include "SRWExclusiveLock.h"
|
||||||
|
|
||||||
IN_PROCESS_APPLICATION* IN_PROCESS_APPLICATION::s_Application = NULL;
|
IN_PROCESS_APPLICATION* IN_PROCESS_APPLICATION::s_Application = NULL;
|
||||||
hostfxr_main_fn IN_PROCESS_APPLICATION::s_fMainCallback = NULL;
|
hostfxr_main_fn IN_PROCESS_APPLICATION::s_fMainCallback = NULL;
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "precomp.hxx"
|
#include "precomp.hxx"
|
||||||
|
#include "application.h"
|
||||||
#include "inprocesshandler.h"
|
#include "inprocesshandler.h"
|
||||||
#include "requesthandler_config.h"
|
#include "requesthandler_config.h"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include "sttimer.h"
|
#include "sttimer.h"
|
||||||
|
#include "utility.h"
|
||||||
|
|
||||||
FileOutputManager::FileOutputManager()
|
FileOutputManager::FileOutputManager()
|
||||||
{
|
{
|
||||||
|
|
@ -160,8 +161,8 @@ FileOutputManager::Start()
|
||||||
|
|
||||||
// There are a few options for redirecting stdout/stderr,
|
// There are a few options for redirecting stdout/stderr,
|
||||||
// but there are issues with most of them.
|
// but there are issues with most of them.
|
||||||
// AllocConsole()
|
// AllocConsole()
|
||||||
// *stdout = *m_pStdFile;
|
// *stdout = *m_pStdFile;
|
||||||
// *stderr = *m_pStdFile;
|
// *stderr = *m_pStdFile;
|
||||||
// Calling _dup2 on stderr fails on IIS. IIS sets stderr to -2
|
// Calling _dup2 on stderr fails on IIS. IIS sets stderr to -2
|
||||||
// _dup2(_fileno(m_pStdFile), _fileno(stdout));
|
// _dup2(_fileno(m_pStdFile), _fileno(stdout));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue