blob: 85eda3b22172c87158b4b68a7c599675c2a3cfd5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#pragma once
// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
typedef IBootstrapperApplicationFactory* (STDMETHODCALLTYPE* PFNCREATEBAFACTORY)(
__in LPCWSTR wzBaFactoryAssemblyName,
__in LPCWSTR wzBaFactoryAssemblyPath
);
struct HOSTFXR_STATE
{
LPWSTR sczHostfxrPath;
hostfxr_handle hostContextHandle;
hostfxr_initialize_for_dotnet_command_line_fn pfnHostfxrInitializeForApp;
hostfxr_get_runtime_properties_fn pfnHostfxrGetRuntimeProperties;
hostfxr_set_error_writer_fn pfnHostfxrSetErrorWriter;
hostfxr_close_fn pfnHostfxrClose;
hostfxr_get_runtime_delegate_fn pfnHostfxrGetRuntimeDelegate;
get_function_pointer_fn pfnGetFunctionPointer;
coreclr_initialize_ptr pfnCoreclrInitialize;
coreclr_create_delegate_ptr pfnCoreclrCreateDelegate;
void* pClrHandle;
UINT dwDomainId;
};
HRESULT DnchostLoadRuntime(
__in HOSTFXR_STATE* pState,
__in LPCWSTR wzNativeHostPath,
__in LPCWSTR wzManagedHostPath,
__in LPCWSTR wzDepsJsonPath,
__in LPCWSTR wzRuntimeConfigPath
);
HRESULT DnchostCreateFactory(
__in HOSTFXR_STATE* pState,
__in LPCWSTR wzBaFactoryAssemblyName,
__in LPCWSTR wzBaFactoryAssemblyPath,
__out IBootstrapperApplicationFactory** ppAppFactory
);
|