【发布时间】:2020-08-17 21:43:27
【问题描述】:
我安装了 MSVC 141 / VS2017 和两个 Windows 工具包(10.0.17763.0 和 10.0.18362.0)。但是,我真的可以选择使用哪个 ucrtbase.dll 吗? VS 自动使用我的系统 DLL,尽管文件系统的 Microsoft SDKs / Windows Kits 部分中有几个变体。它还使用这些系统 DLL 来构建我的 Windows SDK 版本 10.0.17763.0 或 10.0.18362.0 的程序。
'Demo.exe' (Win32): Loaded 'C:\Users\business\source\repos\YZ\x64\Release\AEC_Demo.exe'. Symbols loaded.
'Demo.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Symbols loaded.
'Demo.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Symbols loaded.
'Demo.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Symbols loaded.
'Demo.exe' (Win32): Loaded 'C:\Users\business\source\repos\YZ\x64\Release\AEC_DLL.dll'. Symbols loaded.
'Demo.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbase.dll'.
:
这里是 dll.intermediate.manifest(我还构建了 Demo.exe 使用的 DLL):
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
这是 Demo.exe 的清单:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
【问题讨论】:
-
评论不用于扩展讨论;这个对话是moved to chat。