Issues in MRTK for Hololens 2 and Hololens 2 Emulator

Hello everybody

I’m currently trying to developt on MRTK 2 for Hololens 2 and Hololens 2 Emulator.
I’m following the following tutorial, what got released some days ago : HoloLens 2 fundamentals: develop mixed reality applications - Training | Microsoft Learn
The things is, when i’m building my app in Unity, I have 8 errors what are appearing whereas the console is displaying succeed in build.
Here are the errors :

Do you have any ideas why theses errors are here ? I have all the tools listed up to date so I don’t understand why I have errors in build.

Despite this error, I’m unsure how to deploy for Hololens 2 Emulator. Do we have to Release with x64 or ARM ? When I’m trying to deploy it using Release x64, i have an error NullReferenceException and I don’t know what is it about.

Thank you for your answers

1 Like

Hi Silloty, I’m an engineer on the MRTK team at Microsoft. It’s likely you are missing the latest Windows SDK with the new Hand APIs.

This has the full list of perquisites: Getting Started with the MRTK | Mixed Reality Toolkit Documentation

I’m following up on your emulator question.

1 Like

Hi Silloty,

I work on the HoloLens Emulator at Microsoft. You should set your build configuration to either x86 or x64 when targeting the HoloLens 2 Emulator. For the NullReferenceException, I believe you’re hitting a known issue with Visual Studio 2019, documented in the Troubleshooting section at Using the HoloLens Emulator - Mixed Reality | Microsoft Learn. To fix this, you’ll need to uninstall the emulator, fix up the registry entry noted in the documentation, then reinstall the emulator. Please let me know if you continue to encounter the problem after doing this.

1 Like

Thanks for your answer ! I’ll try that and give you feedback about it.
One more thing, I saw that for Hololens 2 Emulator, it is recommended to have the WDDM 2.5 graphics driver. I’ve made all the updates required (SDK 10.0.18362.0 and Windows Version : 1903) but I still have the WDDM 2.0 graphics driver. Any idea how to update from 2.0 to 2.5 or later version ?

Thanks again !

Hi Chbecker2 !
Thanks a lot !
I’ve installed all the perquisites listed on your link, but I still have these error.
I’ve checked my Visual Studio Version, Windows SDK and Unity Version, everything is up to date. I have Windows SDK 10.0.18362.0. So i don’t know why it is happening :confused:

The problem came from Visual Studio 2017, and not 2019. I am still using Visual Studio 2017 because I read that it’s still better to use the 2017 version than the 2019 version. Should I try with VS 2019 then ?

We definitely support VS2017. I’m following up.
Are you on Slack? It will help us close the loop here for you:

1 Like

Your graphics chip’s manufacturer’s web site will have the latest drivers. For example, if you have an NVIDIA card, please visit nvidia.com and download the latest drivers for your card. Depending on the chip that you have, a WDDM 2.5 driver might not be available. In this case, the emulator will still function but without hardware-accelerated graphics.

1 Like

Visual Studio 2017 is supported. Do you also have Visual Studio 2019 installed, or only 2017? Can you please let me know the value of “KitsRoot10” at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots in the registry (i.e., run “regedit” and navigate to HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots, scroll the right pane to the very bottom, double-click on “KitsRoot10” then copy-and-paste the value into a response here)?

I’m not on slack but I’m going to create an account and join it !

I got it. I think then my graphic card doesn’t have WDDM 2.5 as my computer is running on Intel HD Graphics 5500

I don’t have Visual Studio 2019 installed, only VS 2017.
Here is the value of “KitsRoot10” :

EDIT : Seems like my picture is not uploaded on the forum I don’t know for what reason…
The values are :
Nom de la valeur : KitsRoot10
Données de la valeur : C:\Program Files(x86)\Windows Kits\10\

Thank you for the details. For the KitsRoot10 value, is this a copy-and-paste from the registry, or did you type the value into your reply directly? I ask because there is a space missing between ‘Files’ and ‘(x86)’, which could be relevant to the problem you are encountering if this is how it appears in the registry. If that was a typo and not the actual value from the registry, can you please attempt to launch the emulator from Visual Studio one more time and when it fails, please copy-and-paste the content of the Visual Studio deploy/debug output window in a reply? I’m specifically interested in the full error message that appears.

1 Like

Awesome! Search for “chbecker” and send me a direct message to continue troubleshooting.

Thanks for the answer. That was actual typo and not copy paste sorry. Here is the value copied :
C:\Program Files (x86)\Windows Kits\10
Going to do the Visual Studio test right now

I can’t find you on slack with “chbecker” !

Here is the content of the deploy/debug window from Visual Studio :

1>------ Début de la génération : Projet : Il2CppOutputProject, Configuration : Release x64 ------
1>Building GameAssembly.dll with MsvcWinRtToolChain
1> Msvc Install Version: 15.0
1> Msvc Install SDK Directory: C:\Program Files (x86)\Windows Kits\10
1> Msvc Linker Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\link.exe
1> Msvc Compiler Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\cl.exe
1>
1> Output directory: F:\HololensProjectsSon\MRTK2\App\build\bin\x64\Release
1> Cache directory: F:\HololensProjectsSon\MRTK2\App\build\obj\il2cppOutputProject\x64\Release
1>Il2CppGenericMethodPointerTable.cpp
1>Il2CppMetadataUsage.cpp
1>Il2CppAttributes.cpp
1>Il2CppGenericMethodDefinitions.cpp
1>Il2CppTypeDefinitions.cpp
1>Il2CppMethodPointerTable.cpp
1>Il2CppGenericMethodTable.cpp
1>Il2CppInvokerTable.cpp
1>Il2CppInteropDataTable.cpp
1>Il2CppGenericClassTable.cpp
1>GenericMethods1.cpp
1>GenericMethods6.cpp
1>Bulk_Unity.TextMeshPro_0.cpp
1>Bulk_mscorlib_18.cpp
1>Bulk_Unity.TextMeshPro_1.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.SDK_2.cpp
1>Bulk_Generics_36.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.SDK_1.cpp
1>Bulk_Generics_2.cpp
1>Bulk_Microsoft.MixedReality.Toolkit_3.cpp
1>Bulk_Generics_1.cpp
1>GenericMethods2.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Examples_0.cpp
1>Bulk_mscorlib_10.cpp
1>GenericMethods0.cpp
1>GenericMethods3.cpp
1>Bulk_Generics_35.cpp
1>Bulk_System.Xml_3.cpp
1>Bulk_Generics_42.cpp
1>Bulk_mscorlib_13.cpp
1>Bulk_UnityEngine.UI_0.cpp
1>Bulk_Microsoft.MixedReality.Toolkit_0.cpp
1>Bulk_Generics_17.cpp
1>Bulk_System_4.cpp
1>Bulk_Unity.TextMeshPro_2.cpp
1>Bulk_System_3.cpp
1>GenericMethods5.cpp
1>Bulk_System_2.cpp
1>Bulk_mscorlib_15.cpp
1>Bulk_mscorlib_2.cpp
1>GenericMethods4.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.SDK_0.cpp
1>Bulk_Generics_0.cpp
1>Bulk_mscorlib_5.cpp
1>Bulk_System_0.cpp
1>Il2CppComCallableWrappers10.cpp
1>GenericMethods7.cpp
1>Bulk_mscorlib_6.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Services.InputSystem_0.cpp
1>Il2CppComCallableWrappers11.cpp
1>Bulk_System_1.cpp
1>Bulk_Microsoft.MixedReality.Toolkit_2.cpp
1>Bulk_mscorlib_12.cpp
1>Bulk_Microsoft.MixedReality.Toolkit_1.cpp
1>Bulk_System.Xml_0.cpp
1>Bulk_mscorlib_7.cpp
1>Bulk_mscorlib_3.cpp
1>Bulk_mscorlib_8.cpp
1>Bulk_UnityEngine.UI_1.cpp
1>Bulk_mscorlib_14.cpp
1>Bulk_mscorlib_1.cpp
1>Bulk_mscorlib_0.cpp
1>Il2CppComCallableWrappers0.cpp
1>Il2CppComCallableWrappers23.cpp
1>Bulk_mscorlib_16.cpp
1>Il2CppComCallableWrappers19.cpp
1>Il2CppComCallableWrappers22.cpp
1>Bulk_mscorlib_17.cpp
1>Bulk_UnityEngine.CoreModule_0.cpp
1>Bulk_System.Xml_1.cpp
1>Bulk_Generics_7.cpp
1>Il2CppComCallableWrappers25.cpp
1>Bulk_UnityEngine.CoreModule_1.cpp
1>Bulk_Generics_23.cpp
1>Bulk_Generics_37.cpp
1>Bulk_mscorlib_11.cpp
1>Bulk_mscorlib_4.cpp
1>Bulk_mscorlib_9.cpp
1>Bulk_UnityEngine.UI_2.cpp
1>Il2CppComCallableWrappers2.cpp
1>Bulk_Generics_29.cpp
1>Bulk_Generics_41.cpp
1>Bulk_Generics_44.cpp
1>Il2CppComCallableWrappers14.cpp
1>Il2CppComCallableWrappers18.cpp
1>Il2CppComCallableWrappers16.cpp
1>Bulk_Generics_21.cpp
1>Bulk_Generics_22.cpp
1>Il2CppComCallableWrappers21.cpp
1>Il2CppComCallableWrappers15.cpp
1>Bulk_System.Xml_2.cpp
1>Il2CppComCallableWrappers1.cpp
1>Bulk_Generics_38.cpp
1>Il2CppComCallableWrappers17.cpp
1>Il2CppComCallableWrappers24.cpp
1>Bulk_System.Xml_4.cpp
1>Il2CppComCallableWrappers5.cpp
1>Il2CppComCallableWrappers26.cpp
1>Il2CppComCallableWrappers13.cpp
1>Il2CppComCallableWrappers6.cpp
1>Il2CppComCallableWrappers20.cpp
1>Bulk_System_5.cpp
1>Il2CppComCallableWrappers12.cpp
1>Bulk_Generics_8.cpp
1>Bulk_Generics_6.cpp
1>Bulk_Generics_45.cpp
1>Bulk_Generics_28.cpp
1>Il2CppComCallableWrappers7.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality_0.cpp
1>Il2CppComCallableWrappers9.cpp
1>Bulk_Mono.Security_0.cpp
1>Il2CppComCallableWrappers4.cpp
1>Bulk_Generics_40.cpp
1>Bulk_Generics_3.cpp
1>Bulk_Unity.TextMeshPro_3.cpp
1>Bulk_Generics_39.cpp
1>Bulk_Generics_47.cpp
1>UnresolvedVirtualCallStubs.cpp
1>Bulk_Generics_31.cpp
1>Bulk_Generics_43.cpp
1>Bulk_Generics_30.cpp
1>Bulk_Generics_32.cpp
1>Bulk_Generics_46.cpp
1>Bulk_Generics_27.cpp
1>Bulk_Generics_16.cpp
1>Bulk_Generics_33.cpp
1>Bulk_Generics_48.cpp
1>Bulk_Generics_34.cpp
1>Il2CppGenericInstDefinitions.cpp
1>Bulk_Generics_11.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Utilities.Gltf_0.cpp
1>Bulk_Generics_26.cpp
1>Bulk_Generics_15.cpp
1>Bulk_Generics_10.cpp
1>Bulk_Generics_14.cpp
1>Bulk_Generics_12.cpp
1>Bulk_Generics_9.cpp
1>Il2CppProjectedComCallableWrapperMethods2.cpp
1>Il2CppComCallableWrappers3.cpp
1>Il2CppProjectedComCallableWrapperMethods1.cpp
1>Il2CppProjectedComCallableWrapperMethods4.cpp
1>Il2CppProjectedComCallableWrapperMethods3.cpp
1>Bulk_Generics_18.cpp
1>Il2CppComCallableWrappers8.cpp
1>Bulk_Generics_19.cpp
1>Bulk_Generics_13.cpp
1>Il2CppProjectedComCallableWrapperMethods0.cpp
1>Bulk_Generics_24.cpp
1>Bulk_mscorlib_19.cpp
1>Bulk_Generics_20.cpp
1>Bulk_Generics_25.cpp
1>Bulk_System_6.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Examples_1.cpp
1>Bulk_Generics_5.cpp
1>Bulk_I18N.Rare_0.cpp
1>Bulk_Generics_4.cpp
1>Bulk_System.Runtime.WindowsRuntime_0.cpp
1>Bulk_Generics_49.cpp
1>Bulk_UnityEngine.VRModule_0.cpp
1>Il2CppComCallableWrappers27.cpp
1>Bulk_WindowsRuntimeMetadata_0.cpp
1>Il2CppGenericComDefinitions0.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.SDK_3.cpp
1>Il2CppCompilerCalculateTypeValues_42Table.cpp
1>Il2CppCompilerCalculateTypeValues_49Table.cpp
1>Il2CppCompilerCalculateTypeValuesTable.cpp
1>Bulk_UnityEngine.IMGUIModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_43Table.cpp
1>Il2CppCompilerCalculateTypeValues_45Table.cpp
1>Bulk_I18N.CJK_0.cpp
1>Bulk_I18N.West_0.cpp
1>Il2CppCompilerCalculateTypeValues_44Table.cpp
1>Bulk_I18N_0.cpp
1>Bulk_I18N.Rare_1.cpp
1>Il2CppCompilerCalculateTypeValues_39Table.cpp
1>Il2CppCompilerCalculateTypeValues_48Table.cpp
1>Il2CppCompilerCalculateTypeValues_41Table.cpp
1>Il2CppCompilerCalculateTypeValues_40Table.cpp
1>Bulk_UnityEngine.UnityWebRequestModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_10Table.cpp
1>Il2CppCompilerCalculateTypeValues_6Table.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Providers.WindowsVoiceInput_0.cpp
1>Il2CppCompilerCalculateTypeValues_20Table.cpp
1>Bulk_UnityEngine.CoreModule_2.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Services.DiagnosticsSystem_0.cpp
1>Bulk_System.Xml_5.cpp
1>Il2CppCompilerCalculateTypeValues_35Table.cpp
1>char-conversions.cpp
1>Il2CppCompilerCalculateTypeValues_22Table.cpp
1>Il2CppCompilerCalculateTypeValues_17Table.cpp
1>Il2CppCompilerCalculateTypeValues_0Table.cpp
1>Il2CppCompilerCalculateTypeValues_30Table.cpp
1>Bulk_System.Core_0.cpp
1>Il2CppCompilerCalculateTypeValues_23Table.cpp
1>Bulk_UnityEngine.XRModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_7Table.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Services.BoundarySystem_0.cpp
1>Il2CppCompilerCalculateTypeValues_38Table.cpp
1>Il2CppCompilerCalculateTypeValues_18Table.cpp
1>Il2CppCompilerCalculateTypeValues_16Table.cpp
1>Bulk_Mono.Security_1.cpp
1>Bulk_UnityEngine.AudioModule_0.cpp
1>Bulk_I18N.Other_0.cpp
1>Il2CppCompilerCalculateTypeValues_9Table.cpp
1>Il2CppCompilerCalculateTypeValues_34Table.cpp
1>Il2CppCompilerCalculateTypeValues_3Table.cpp
1>Il2CppCompilerCalculateTypeValues_8Table.cpp
1>Il2CppCompilerCalculateTypeValues_5Table.cpp
1>Il2CppCompilerCalculateTypeValues_21Table.cpp
1>Il2CppCompilerCalculateTypeValues_32Table.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Core.Utilities.Async_0.cpp
1>Il2CppCompilerCalculateTypeValues_29Table.cpp
1>Il2CppCompilerCalculateTypeValues_19Table.cpp
1>Il2CppCompilerCalculateTypeValues_31Table.cpp
1>Il2CppCompilerCalculateTypeValues_15Table.cpp
1>Il2CppCompilerCalculateTypeValues_11Table.cpp
1>Il2CppCompilerCalculateTypeValues_33Table.cpp
1>Bulk_UnityEngine.AnimationModule_0.cpp
1>Bulk_I18N.MidEast_0.cpp
1>Il2CppCompilerCalculateTypeValues_4Table.cpp
1>Il2CppCompilerCalculateTypeValues_46Table.cpp
1>Il2CppCompilerCalculateTypeValues_14Table.cpp
1>Il2CppCompilerCalculateTypeValues_2Table.cpp
1>Bulk_UnityEngine.PhysicsModule_0.cpp
1>Bulk_UnityEngine.TerrainModule_0.cpp
1>Bulk_UnityEngine.TextRenderingModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_12Table.cpp
1>Bulk_UnityEngine.UIModule_0.cpp
1>Bulk_System.Numerics_0.cpp
1>Bulk_UnityEngine.UI_3.cpp
1>Il2CppCompilerCalculateTypeValues_28Table.cpp
1>Il2CppCompilerCalculateTypeValues_36Table.cpp
1>Il2CppCompilerCalculateTypeValues_37Table.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Examples.Demos.Gltf_0.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Services.SpatialAwarenessSystem_0.cpp
1>Il2CppCompilerCalculateTypeValues_24Table.cpp
1>Il2CppCompilerCalculateTypeValues_27Table.cpp
1>Bulk_Microsoft.MixedReality.Toolkit.Services.TeleportSystem_0.cpp
1>Bulk_UnityEngine.Physics2DModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_25Table.cpp
1>Il2CppCompilerCalculateTypeValues_26Table.cpp
1>Bulk_UnityEngine.ParticleSystemModule_0.cpp
1>Il2CppCompilerCalculateTypeValues_1Table.cpp
1>Il2CppCompilerCalculateTypeValues_13Table.cpp
1>Il2CppCompilerCalculateTypeValues_47Table.cpp
1>Bulk_MixedRealityToolkit.Examples.Demos.UX.Interactables_0.cpp
1>Bulk_UnityEngine.SharedInternalsModule_0.cpp
1>Decimal.cpp
1>Messages.cpp
1>Bulk_UnityEngine.VideoModule_0.cpp
1>Bulk_UnityEngine.UIElementsModule_0.cpp
1>deflate.c
1>Bulk_UnityEngine.TilemapModule_0.cpp
1>Bulk_UnityEngine.VFXModule_0.cpp
1>SocketImpl.cpp
1>Bulk_System.Configuration_0.cpp
1>Bulk_UnityEngine.UnityAnalyticsModule_0.cpp
1>Class.cpp
1>Bulk_Microsoft.MixedReality.Toolkit_4.cpp
1>SocketImpl.cpp
1>FileTests.cpp
1>Bulk_UnityEngine.InputModule_0.cpp
1>inflate.c
1>Socket.cpp
1>MetadataCache.cpp
1>trees.c
1>Bulk_UnityEngine.JSONSerializeModule_0.cpp
1>Bulk_UnityEngine.AssetBundleModule_0.cpp
1>ThreadPool.cpp
1>Runtime.cpp
1>il2cpp-mono-support.cpp
1>AtomicQueue.cpp
1>WindowsRuntime.cpp
1>MonoType.cpp
1>Bulk_System.Runtime.WindowsRuntime.UI.Xaml_0.cpp
1>File.cpp
1>threadpool-ms.cpp
1>xamarin_getifaddrs.c
1>Bulk_MixedRealityToolkit.Examples.Demos.Utilities.InspectorFields_0.cpp
1>il2cpp-api.cpp
1>Type.cpp
1>Monitor.cpp
1>Thread.cpp
1>Reflection.cpp
1>ArrayMetadata.cpp
1>Bulk_UnityEngine.AIModule_0.cpp
1>infback.c
1>Bulk_UnityEngine.DirectorModule_0.cpp
1>Marshal.cpp
1>Exception.cpp
1>DirectoryTests.cpp
1>Assembly.cpp
1>Thread.cpp
1>gzread.c
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzread.c(319): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘unsigned int’, perte possible de donn?es
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzread.c(400): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘unsigned int’, perte possible de donn?es
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzread.c(472): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘int’, perte possible de donn?es
1>Array.cpp
1>MonoIO.cpp
1>gzwrite.c
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzwrite.c(212): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘unsigned int’, perte possible de donn?es
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzwrite.c(232): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘unsigned int’, perte possible de donn?es
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\external\zlib\gzwrite.c(371): warning C4267: ‘=’?: conversion de ‘size_t’ en ‘int’, perte possible de donn?es
1>Debugger.cpp
1>Number.cpp
1>PlatformInvoke.cpp
1>Liveness.cpp
1>gzlib.c
1>Type.cpp
1>threadpool-ms-io.cpp
1>MonoMethod.cpp
1>il2cpp-callbacks.cpp
1>File.cpp
1>RCW.cpp
1>CultureInfo.cpp
1>crc32.c
1>Bulk_UnityEngine.ImageConversionModule_0.cpp
1>WindowsRuntime.cpp
1>Image.cpp
1>inftrees.c
1>inffast.c
1>MemoryMappedFile.cpp
1>MemoryInformation.cpp
1>ThreadImpl.cpp
1>Field.cpp
1>COM.cpp
1>Object.cpp
1>RuntimeType.cpp
1>GenericMetadata.cpp
1>GCHandle.cpp
1>Socket.cpp
1>LibraryLoader.cpp
1>GarbageCollector.cpp
1>MemoryMappedFile.cpp
1>Il2CppReversePInvokeWrapperTable.cpp
1>PosixWaitObject.cpp
1>StackTrace.cpp
1>GenericClass.cpp
1>ThreadPoolWorkerThread.cpp
1>Enum.cpp
1>SocketImpl.cpp
1>PathTests.cpp
1>Array.cpp
1>Bulk_UnityEngine.GridModule_0.cpp
1>BoehmGC.cpp
1>ThreadImpl.cpp
1>Method.cpp
1>Console.cpp
1>LibraryLoader.cpp
1>Thread.cpp
1>AppDomain.cpp
1>String.cpp
1>TimeZone.cpp
1>ThreadPoolMonitorThread.cpp
1>NativeSymbol.cpp
1>Environment.cpp
1>ValueType.cpp
1>Directory.cpp
1>zutil.c
1>Image.cpp
1>AssemblyName.cpp
1>ComObjectBase.cpp
1>Environment.cpp
1>Error.cpp
1>Locale.cpp
1>FieldLayout.cpp
1>MemoryMappedFile.cpp
1>CCW.cpp
1>CompareInfo.cpp
1>GenericMethod.cpp
1>RuntimeTypeHandle.cpp
1>MonoField.cpp
1>Profiler.cpp
1>MonoPosixHelper.cpp
1>MemoryMapImpl.cpp
1>threadpool-ms-io-poll.cpp
1>StringUtils.cpp
1>Directory.cpp
1>File.cpp
1>LibraryLoaderTests.cpp
1>Environment.cpp
1>MemoryMappedFileTests.cpp
1>Interlocked.cpp
1>TimeZoneInfo.cpp
1>MethodBase.cpp
1>String.cpp
1>adler32.c
1>MutexTests.cpp
1>SocketTests.cpp
1>MonoCustomAttrs.cpp
1>WaitHandle.cpp
1>SemaphoreTests.cpp
1>VmStringUtils.cpp
1>CultureData.cpp
1>Win32ApiWinRTEmulation.cpp
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\os\WinRT\Win32ApiWinRTEmulation.cpp(184): warning C4996: ‘ABI::Windows::System::UserProfile::IUserInformationStatics’: Use User instead of UserInformation. For more info, see MSDN.
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt\windows.system.userprofile.h(2139): note: voir la d?claration de ‘ABI::Windows::System::UserProfile::IUserInformationStatics’
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\os\WinRT\Win32ApiWinRTEmulation.cpp(185): warning C4996: ‘RuntimeClass_Windows_System_UserProfile_UserInformation’: Use User instead of UserInformation. For more info, see MSDN.
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt\windows.system.userprofile.h(2575): note: voir la d?claration de ‘RuntimeClass_Windows_System_UserProfile_UserInformation’
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\os\WinRT\Win32ApiWinRTEmulation.cpp(189): warning C4996: ‘ABI::Windows::System::UserProfile::IUserInformationStatics::get_NameAccessAllowed’: Use User instead of UserInformation. For more info, see MSDN.
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt\windows.system.userprofile.h(2153): note: voir la d?claration de ‘ABI::Windows::System::UserProfile::IUserInformationStatics::get_NameAccessAllowed’
1>F:\HololensProjectsSon\MRTK2\App\Il2CppOutputProject\IL2CPP\libil2cpp\os\WinRT\Win32ApiWinRTEmulation.cpp(199): warning C4996: ‘ABI::Windows::System::UserProfile::IUserInformationStatics::GetDisplayNameAsync’: Use User instead of UserInformation. For more info, see MSDN.
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt\windows.system.userprofile.h(2219): note: voir la d?claration de ‘ABI::Windows::System::UserProfile::IUserInformationStatics::GetDisplayNameAsync’
1>Convert.cpp
1>TimeZone.cpp
1>Process.cpp
1>Enum.cpp
1>ThreadPoolMs.cpp
1>Image.cpp
1>ThreadLocalValueTests.cpp
1>CalendarData.cpp
1>Environment.cpp
1>MarshalAlloc.cpp
1>AssemblyName.cpp
1>VisualizerHelpers.cpp
1>Module.cpp
1>PerformanceCounterCategory.cpp
1>EventTests.cpp
1>WindowsHelpers.cpp
1>Time.cpp
1>WindowsRuntime.cpp
1>MonoMethodMessage.cpp
1>Dns.cpp
1>StackFrame.cpp
1>TimeZoneTests.cpp
1>Math.cpp
1>Directory.cpp
1>PerformanceCounter.cpp
1>Il2CppTypeCompare.cpp
1>RuntimeHelpers.cpp
1>Win32ApiSharedEmulation.cpp
1>uncompr.c
1>Assembly.cpp
1>Random.cpp
1>GCHandle.cpp
1>COM.cpp
1>NullGC.cpp
1>compress.c
1>ProcessTests.cpp
1>ThreadPool.cpp
1>GC.cpp
1>COM.cpp
1>ModuleBuilder.cpp
1>gc.c
1>MonoMethodInfo.cpp
1>NativeMethods.cpp
1>Memory.cpp
1>RegionInfo.cpp
1>NativeEventCalls.cpp
1>MonoPropertyInfo.cpp
1>StackTrace.cpp
1>MemoryMappedFile.cpp
1>Delegate.cpp
1>Buffer.cpp
1>Encoding.cpp
1>RNGCryptoServiceProvider.cpp
1>EnvironmentTests.cpp
1>TypedReference.cpp
1>Monitor.cpp
1>Semaphore.cpp
1>MemoryPool.cpp
1>COM.cpp
1>WaitHandle.cpp
1>CpuInfo.cpp
1>BlobReader.cpp
1>Atomic.cpp
1>DirectoryUtils.cpp
1>Mutex.cpp
1>AsyncResult.cpp
1>COMTests.cpp
1>Time.cpp
1>MutexImpl.cpp
1>ConsoleDriver.cpp
1>WeakReference.cpp
1>CryptographyTests.cpp
1>MetadataAlloc.cpp
1>FieldInfo.cpp
1>TypeBuilder.cpp
1>MemberInfo.cpp
1>CurrentSystemTimeZone.cpp
1>Semaphore.cpp
1>SystemCertificates.cpp
1>RuntimeFieldHandle.cpp
1>Domain.cpp
1>Bulk_System.Numerics.Vectors_0.cpp
1>Bulk_System.ObjectModel_0.cpp
1>Path.cpp
1>Handle.cpp
1>Bulk_System.Runtime_0.cpp
1>Bulk_UnityEngine_0.cpp
1>UnsafeNativeMethods.cpp
1>ConsoleTests.cpp
1>File.cpp
1>UnityAdsStubs.cpp
1>Allocator.cpp
1>ArgIterator.cpp
1>ConditionVariableImpl.cpp
1>TimeTests.cpp
1>Event.cpp
1>MainTestRunner.cpp
1>Image.cpp
1>MonoEventInfo.cpp
1>Runtime.cpp
1>Environment.cpp
1>PerformanceCounterUtils.cpp
1>Locale.cpp
1>Handle.cpp
1>Il2CppCodeRegistration.cpp
1>Cryptography.cpp
1>CpuInfo.cpp
1>Process.cpp
1>krait_signal_handler.c
1>Il2CppTypeHash.cpp
1>StackTrace.cpp
1>ErrorTests.cpp
1>InternalCalls.cpp
1>ThreadImpl.cpp
1>Parameter.cpp
1>Process.cpp
1>Exception.cpp
1>SecurityManager.cpp
1>WindowsImpersonationContext.cpp
1>Mutex.cpp
1>SystemCertificates.cpp
1>KeyPairPersistence.cpp
1>Il2CppGenericContextCompare.cpp
1>Environment.cpp
1>Mutex.cpp
1>MarshalingUtils.cpp
1>LibraryLoader.cpp
1>SemaphoreImpl.cpp
1>EventInfo.cpp
1>PropertyInfo.cpp
1>MemoryTests.cpp
1>Path.cpp
1>ParameterInfo.cpp
1>Il2CppMetadataRegistration.cpp
1>ActivationServices.cpp
1>Socket.cpp
1>Process.cpp
1>EventImpl.cpp
1>WindowsIdentity.cpp
1>Process.cpp
1>Activator.cpp
1>RegisterRuntimeInitializeAndCleanup.cpp
1>Win32Exception.cpp
1>MutexImpl.cpp
1>Normalization.cpp
1>Memory.cpp
1>SemaphoreImpl.cpp
1>DriveInfo.cpp
1>GenericSharing.cpp
1>Il2CppSignatureCompare.cpp
1>ConditionVariable.cpp
1>MonoGenericClass.cpp
1>ConditionVariableImpl.cpp
1>StackTrace.cpp
1>ConditionVariable.cpp
1>__ComObject.cpp
1>Path.cpp
1>MetadataLoader.cpp
1>Cryptography.cpp
1>Il2CppGenericInstCompare.cpp
1>LastError.cpp
1>AssemblyBuilder.cpp
1>TimeZoneInfoTests.cpp
1>mono-structs.cpp
1>Char.cpp
1>Handle.cpp
1>SizedReference.cpp
1>MonoEnumInfo.cpp
1>Cryptography.cpp
1>Semaphore.cpp
1>ThreadLocalValueImpl.cpp
1>ReaderWriterLock.cpp
1>NumberFormatter.cpp
1>ConditionVariableTests.cpp
1>RemotingServices.cpp
1>StackTrace.cpp
1>NativeMethods.cpp
1>Environment.cpp
1>Il2CppGenericContextHash.cpp
1>NativeDelegateMethodCache.cpp
1>ThreadLocalValueImpl.cpp
1>Object.cpp
1>Debugger.cpp
1>Logging.cpp
1>LibraryLoader.cpp
1>MarshalStringAlloc.cpp
1>MonoCMethod.cpp
1>LinuxNetworkInterface.cpp
1>Event.cpp
1>WindowsPrincipal.cpp
1>Il2CppSignatureHash.cpp
1>GenericContainer.cpp
1>InotifyWatcher.cpp
1>Runtime.cpp
1>il2cpp-codegen-common.cpp
1>LocaleTests.cpp
1>Locale.cpp
1>NativeMethods.cpp
1>Property.cpp
1>RealProxy.cpp
1>PosixHelpers.cpp
1>MarshalStringAlloc.cpp
1>SystemCertificates.cpp
1>ThreadLocalValue.cpp
1>Initialize.cpp
1>DynamicMethod.cpp
1>Console.cpp
1>CustomAttributeBuilder.cpp
1>EventImpl.cpp
1>SignatureHelper.cpp
1>Normalization.cpp
1>SecurityFrame.cpp
1>Il2CppGenericClassHash.cpp
1>TimeZoneInfo.cpp
1>PathUtils.cpp
1>Il2CppGenericMethodHash.cpp
1>Double.cpp
1>Il2CppGenericClassCompare.cpp
1>CustomAttributeData.cpp
1>ThreadLocalValue.cpp
1>Context.cpp
1>SafeStringMarshal.cpp
1>DefaultConfig.cpp
1>gzclose.c
1>Il2CppGenericInstHash.cpp
1>Output.cpp
1>TimeZoneInfo.cpp
1>Il2CppGenericMethodCompare.cpp
1>InternalConfigurationHost.cpp
1>ComInteropProxy.cpp
1>InternalConfigurationHost.cpp
1>RtFieldInfo.cpp
1>Cryptography.cpp
1>RuntimeMarshal.cpp
1>DateTime.cpp
1>DllMain.cpp
1>Exception.cpp
1>MemoryMappedFile.cpp
1>Console.cpp
1>MonoTlsProviderFactory.cpp
1>MacOsIPInterfaceProperties.cpp
1>NativeMethods.cpp
1>InternalThread.cpp
1>MonoGenericCMethod.cpp
1>MonoGenericMethod.cpp
1>Process.cpp
1>DefaultTraceListener.cpp
1>TimeZone.cpp
1>SystemCertificates.cpp
1>SocketException.cpp
1>Assert.cpp
1>Evidence.cpp
1>MethodBuilder.cpp
1>GenericTypeParameterBuilder.cpp
1>CpuInfoTests.cpp
1>Image.cpp
1>FileVersionInfo.cpp
1>EnumBuilder.cpp
1>FAMWatcher.cpp
1>Initialize.cpp
1>IOSelector.cpp
1>CLRConfig.cpp
1>KqueueMonitor.cpp
1>DerivedType.cpp
1>MessagesTests.cpp
1>Time.cpp
1>VersioningHelper.cpp
1>MarshalAlloc.cpp
1>SymbolType.cpp
1>SystemCertificates.cpp
1>Memory.cpp
1>Debug.cpp
1>MissingMemberException.cpp
1>Error.cpp
1>FileSystemWatcher.cpp
1>Path.cpp
1>MarshalAlloc.cpp
1>Path.cpp
1>RuntimeMethodHandle.cpp
1>Initialize.cpp
1>Stopwatch.cpp
1>RuntimeGPtrArrayHandle.cpp
1>Memory.cpp
1>RuntimeClassHandle.cpp
1>EncodingHelper.cpp
1>FileSystemWatcher.cpp
1>Timer.cpp
1>ScopedThreadAttacher.cpp
1>Path.cpp
1>TimeSpan.cpp
1>Debug.cpp
1>Encoding.cpp
1>Error.cpp
1>Locale.cpp
1>UnityTls.cpp
1>CpuInfo.cpp
1>Thread.cpp
1>DebugTests.cpp
1>FileSystemWatcher.cpp
1>ThreadTests.cpp
1>CpuInfo.cpp
1>File.cpp
1>LastError.cpp
1>LastError.cpp
1>Event.cpp
1>Module.cpp
1>Encoding.cpp
1>WriteBarrier.cpp
1>Initialize.cpp
1>Messages.cpp
1>NativeMethodsTests.cpp
1>class-internals.cpp
1>Debug.cpp
1>ObjectFiles: 702 of which compiled: 702
1> Time Compile: 49360 milliseconds Bulk_mscorlib_5.cpp
1> Time Compile: 29835 milliseconds Bulk_Unity.TextMeshPro_3.cpp
1> Time Compile: 28658 milliseconds Bulk_Unity.TextMeshPro_2.cpp
1> Time Compile: 22773 milliseconds Bulk_System_5.cpp
1> Time Compile: 17450 milliseconds Il2CppComCallableWrappers18.cpp
1> Time Compile: 16869 milliseconds Il2CppComCallableWrappers14.cpp
1> Time Compile: 16850 milliseconds Il2CppComCallableWrappers25.cpp
1> Time Compile: 16052 milliseconds Il2CppComCallableWrappers20.cpp
1> Time Compile: 15669 milliseconds Il2CppComCallableWrappers16.cpp
1> Time Compile: 15604 milliseconds Il2CppComCallableWrappers15.cpp
1>Total compilation time: 558143 milliseconds.
1>Cr?ation de la biblioth?que F:\HololensProjectsSon\MRTK2\App\build\obj\il2cppOutputProject\x64\Release\linkresult_CF999887E301601968FFD5BAC51FF7C0\GameAssembly.lib et de l’objet F:\HololensProjectsSon\MRTK2\App\build\obj\il2cppOutputProject\x64\Release\linkresult_CF999887E301601968FFD5BAC51FF7C0\GameAssembly.exp
1>Total link time: 70038 milliseconds.
1>Cleaned up 1406 object files.
1>Génération du projet “Il2CppOutputProject.vcxproj” terminée.
2>------ Début de la génération : Projet : MRTK2, Configuration : Release x64 ------
2>App.cpp
2>UnityGenerated.cpp
2>f:\hololensprojectsson\mrtk2\app\mrtk2\app.cpp(26): warning C4973: ‘Windows::UI::ViewManagement::IApplicationView2::SuppressSystemOverlays::set’ : marqué comme déconseillé
2>f:\hololensprojectsson\mrtk2\app\mrtk2\app.cpp(26): note: Message : ‘Use the TryEnterFullScreen method and IsFullScreenMode property instead of SuppressSystemOverlays. For more info, see MSDN.’
2>Génération de code en cours
2>0 of 160 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
2> 0 functions were new in current compilation
2> 0 functions had inline decision re-evaluated but remain unchanged
2>Fin de la génération du code
2>MRTK2.vcxproj → F:\HololensProjectsSon\MRTK2\App\build\bin\x64\Release\MRTK2.exe
2>Génération du projet “MRTK2.vcxproj” terminée.
3>------ Début du déploiement : Projet : MRTK2, Configuration : Release x64 ------
DEP6100 : L’erreur inattendue suivante s’est produite durant l’étape d’amorçage ‘Connexion à l’appareil ‘475D2000-0BFD-816F-5DFF-91985AF2F434’.’ : NullReferenceException - La référence d’objet n’est pas définie à une instance d’un objet. [0x80004003]
========== Génération : 2 a réussi, 0 a échoué, 0 mis à jour, 0 a été ignoré ==========
========== Déploiement : 0 a réussi, 1 a échoué, 0 a été ignoré ==========

Thank you for the detailed information. We have a theory on what the issue is. Can you please install the Windows 10 SDK version 10.0.14393.795 from https://developer.microsoft.com/en-us/windows/downloads/sdk-archive and try again? You should not retarget your projects to this SDK, only install it. This should place several missing files onto your machine.

1 Like

I’ve installed the missing SDK, and I’m encountering another error now :

3>------ Début du déploiement : Projet : MRTK2, Configuration : Release Win32 ------
DEP6100 : L’erreur inattendue suivante s’est produite durant l’étape d’amorçage ‘Connexion à l’appareil ‘475D2000-0BFD-816F-5DFF-91985AF2F434’.’ : CommunicationException - Le serveur n’a pas fourni de réponse pertinente ; ceci peut être causé par des contrats qui ne correspondent pas, un arrêt prématuré de la session ou une erreur interne du serveur. [0x80131501]
========== Génération : 2 a réussi, 0 a échoué, 0 mis à jour, 0 a été ignoré ==========
========== Déploiement : 0 a réussi, 1 a échoué, 0 a été ignoré ==========

It sounds like we’re making progress but aren’t quite there yet. Can you tell me in what order you installed components such as the Windows 10 SDK (10.0.18362), Visual Studio and the HoloLens 2 Emulator on your machine? The issue appears to be that one or more critical files is missing or the wrong version. If I can replicate your setup here, I might be able to give you a definitive solution. Otherwise, I can offer additional suggestions but can’t guarantee that they will resolve the issue. One key file that’s of concern is Microsoft.Tools.Connectivity.dll. Before you installed the 10.0.14393 SDK, this file would have been missing from C:\Program Files (x86)\Windows Kits\10\x86. If your project is targeting 10.0.18362, the wrong version of the file might now be in use, resulting in the error you’re currently seeing. The goal is to get the correct version of that file into your C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86 folder. The solution might be as simple as running the 10.0.18362 SDK installer again (e.g., doing a ‘repair’ install). The file version we’re looking for is 10.0.18362.1. Do you see Microsoft.Tools.Connectivity.dll in C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86 with that version? (Right-click on the file in an Explorer window, choose ‘Properties’ and look at the Details tab to view the version.)

Hum, I think that that I installed first the windows SK (10.0.18362), then the Hololens 2 Emulator. Visual studio was already installed because I’m currently developping for Hololens 1 using Unity 2017.4.0f1

So I should first “repair” the 10.0.18362.0 SDK and then check for Microsoft.Tools.Connectivity.dll ? Without the repair step done, I’m seeing the Microsoft.Tools.Connectivity.dll file in that path : C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86

@P_D_B Above Slack short URL access error, could you send a full invitation link?

I’m having this problem, too.
Any help would be appreciated!

The relevant tools are installed in the following order:

  1. Visual Studio 2017
  2. Windows SDK 10.0.18362.0 (installed to D:\Windows Kits\10)
  3. Repair Visual Studio 2017 to add Universal Windows Project support
  4. HoloLens 2 Emulator
  5. Windows SDK 10.0.14393.795

I just compiled a Visual Studio auto-generated HoloLens project with the following compilation output:
(please see the attached text file)

4622140–432907–hololens-error.txt (1.3 KB)

@jellchen Visual Studio expects to find the emulator application (XDE.exe) in your Program Files (x86)\Windows Kits\10 folder. Can you please do one of the following?

Option 1 (try this first): Run Visual Studio as Administrator. This might resolve the problem for the 10.0.18362.1005 build of the emulator. Running as Administrator is no longer required if you install the 10.0.18361.1019 build of the emulator, which is the current build.

Option 2: Uninstall all kits and reinstall them, allowing them to install to your Program Files (x86)\Windows Kits\10 folder.

Option 3: Uninstall the HoloLens 2 Emulator, then use the registry editor (regedit) to change the “KitsRoot10” value at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots to be your 32-bit Program Files folder (e.g., “C:\Program Files (x86)\Windows Kits\10”), and then reinstall the HoloLens 2 Emulator, which should then install to this location.

Option 1 is preferred, as that is the supported mechanism. Option 2 would be the next best option. Option 3 should work, but has the potential to cause problems in the future if/when you install other kits, as some files will be in Program Files (x86) and others will be in D:\Windows Kits\10).