Coding inside IL2CPP project

I’m trying to add Xbox Live calls inside the project.

In Unity project I call the method public static void SilentSignIn () from the Start method in a MonoBehaviour.
That method is converted in

extern "C"  void XboxLiveManager_SilentSignIn_m576691742 (Il2CppObject * __this /* static, unused */, const MethodInfo* method)

which is in Il2CppOutputProject

Inside such method I must call Windows::System::User::FindAllAsync but : even if I import Windows.h I cannot resolve Windows namespace.

Please help.

Generally, you shouldn’t edit generated C++ code, because it will get overwritten every time you build from Unity. Generally, if you want to call into C++ code, you’d use “P/Invoke” functions in C# and then have your implementations ready as lose .cpp files in your Unity project or as .dll files (already compiled C++ code).

However, are you on Unity 5.6? You can call these methods directly from C# in your scripts. No need to write anything in C++:

Thirst: thank you for replying.
Second: I switched the player to Windows Store platform and set parameters as indicated in documentation:
API Compatibility Level: .NET 4.6
Compilation Overrides: Use Net Core

Am I supposed, this way, to be able to use Windows namespace inside scripts? Because it doesn’t work…

Yeah you should be. Just don’t forget to wrap that code inside #if ENABLE_WINMD_SUPPORT/#endif. For instance:

#if NET_4_6
async
#endif
void SilentSignIn()
{
    #if ENABLE_WINMD_SUPPORT
    var users = await Windows.System.User.FindAllAsync();
    foreach (var user in users)
        ...
    #endif
}

I’m making several tests because I’m pretty sure I’m not setting up something right.
One of the error is, the script does not compile because it doesn’t recognize the modifier async. Also, is it expected to show all that code in gray?

Wait, something moved…

Once I thrown in Xbox Live DLL and a custom test DLL

The solution duplicated the project this way

The .Player project references what I need and the code assist goes my way. I think I should find a way now to separate the code between the two project with an #if

Trying to build the IL2CPP project here’s what I got:

Error MSB3073 The command ““D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\build\il2cpp.exe” --libil2cpp-static --compile-cpp -architecture=x64 -configuration=Debug -platform=winrt -outputpath=“D:\TestXboxLive\Builds\build\bin\x64\Debug\GameAssembly.dll” --data-folder=“D:\TestXboxLive\Builds\build\bin\x64\Debug\” -cachedirectory=“D:\TestXboxLive\Builds\build\obj\il2cppOutputProject\x64\Debug\” -generatedcppdir=“D:\TestXboxLive\Builds\Il2CppOutputProject\Source” --additional-defines=WINDOWS_UWP --additional-defines=UNITY_UWP --additional-defines=UNITY_WSA_10_0 --additional-defines=UNITY_WSA --additional-defines=UNITY_WINRT -dotnetprofile=Net45 -verbose --map-file-parser=“D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\MapFileParser\MapFileParser.exe”” exited with code -532462766. Il2CppOutputProject C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets 44

Full log:

1>------ Build started: Project: Il2CppOutputProject, Configuration: Debug x64 ------
1>Building GameAssembly.dll with MsvcWinRtToolChain.
1> Output directory: D:\TestXboxLive\Builds\build\bin\x64\Debug
1> Cache directory: D:\TestXboxLive\Builds\build\obj\il2cppOutputProject\x64\Debug
1>il2cpp.exe didn’t catch exception: System.AggregateException: One or more errors occurred. —> System.ComponentModel.Win32Exception: The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.c__AnonStorey12.<>m__0(Object o) 1> --- End of inner exception stack trace --- 1> at Unity.IL2CPP.Building.ParallelFor.RunWithResult[D,T](D[ ] data, Func2 action)
1> at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector) 1> at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics) 1> at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics) 1> at il2cpp.Program.DoRun(String[ ] args) 1> at il2cpp.Program.Run(String[ ] args) 1> at il2cpp.Program.Main(String[ ] args) 1>---> (Inner Exception #0) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<RunWithResult>c__AnonStorey12.<>m__0(Object o)<—
1>
1>—> (Inner Exception #1) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.c__AnonStorey12.<>m__0(Object o)<--- 1> 1>---> (Inner Exception #2) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<RunWithResult>c__AnonStorey12.<>m__0(Object o)<—
1>
1>—> (Inner Exception #3) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.c__AnonStorey12.<>m__0(Object o)<--- 1> 1>---> (Inner Exception #4) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<RunWithResult>c__AnonStorey12.<>m__0(Object o)<—
1>
1>—> (Inner Exception #5) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.c__AnonStorey12.<>m__0(Object o)<--- 1> 1>---> (Inner Exception #6) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<RunWithResult>c__AnonStorey12.<>m__0(Object o)<—
1>
1>—> (Inner Exception #7) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.c__AnonStorey12.<>m__0(Object o)<--- 1> 1> 1>Unhandled Exception: System.AggregateException: One or more errors occurred. ---> System.ComponentModel.Win32Exception: The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<RunWithResult>c__AnonStorey12.<>m__0(Object o)
1> — End of inner exception stack trace —
1> at Unity.IL2CPP.Building.ParallelFor.RunWithResult[D,T](D[ ] data, Func2 action) 1> at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector)
1> at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
1> at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics)
1> at il2cpp.Program.DoRun(String[ ] args)
1> at il2cpp.Program.Run(String[ ] args)
1> at il2cpp.Program.Main(String[ ] args)
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets(44,5): error MSB3073: The command ““D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\build\il2cpp.exe” --libil2cpp-static --compile-cpp -architecture=x64 -configuration=Debug -platform=winrt -outputpath=“D:\TestXboxLive\Builds\build\bin\x64\Debug\GameAssembly.dll” --data-folder=“D:\TestXboxLive\Builds\build\bin\x64\Debug\” -cachedirectory=“D:\TestXboxLive\Builds\build\obj\il2cppOutputProject\x64\Debug\” -generatedcppdir=“D:\TestXboxLive\Builds\Il2CppOutputProject\Source” --additional-defines=WINDOWS_UWP --additional-defines=UNITY_UWP --additional-defines=UNITY_WSA_10_0 --additional-defines=UNITY_WSA --additional-defines=UNITY_WINRT -dotnetprofile=Net45 -verbose --map-file-parser=“D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\MapFileParser\MapFileParser.exe”” exited with code -532462766.
1>Done building project “Il2CppOutputProject.vcxproj” – FAILED.
2>------ Build started: Project: TestXboxLive, Configuration: Debug x64 ------
2>pch.cpp
2>App.cpp
2>Main.cpp
2>UnityGenerated.cpp
2>d:\testxboxlive\builds\testxboxlive\app.cpp(26): warning C4973: ‘Windows::UI::ViewManagement::IApplicationView2::SuppressSystemOverlays::set’: marked as deprecated
2>d:\testxboxlive\builds\testxboxlive\app.cpp(26): note: Message: ‘Use the TryEnterFullScreen method and IsFullScreenMode property instead of SuppressSystemOverlays. For more info, see MSDN.’
2>LINK : fatal error LNK1104: cannot open file ‘D:\TestXboxLive\Builds\build\bin\x64\Debug\GameAssembly.lib’
2>Done building project “TestXboxLive.vcxproj” – FAILED.
========== Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped ==========

You’re using wrong define. #if NETFX_CORE will not work for il2cpp. Use #if ENABLE_WINMD_SUPPORT instead.

As for that compilation error - for some reason IL2CPP cannot locate a C++ compiler on your machine. Do you use VS2017 or VS2015?

Ok, define corrected and the magic works +1 beer

I’m using VS2017…

I assume you’re still getting the il2сpp compilation error?

Does this file exist on your machine? “C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\Hostx64\x64\cl.exe”

Yes

Yes but not in Professional, in Community (the version of VS I’m using)

Could you drop this DLL into <Generated_VS_solution_folder>\il2cppOutputProject\IL2CPP\build\ (you should overwrite existing file), then try to build and paste the output? I added some debug logging to figure out where it’s looking for the compiler.

3037866–227396–Unity.IL2CPP.Building.dll.zip (63.3 KB)

Here you go :

1>------ Build started: Project: Il2CppOutputProject, Configuration: Master x64 ------
1>Building GameAssembly.dll with MsvcWinRtToolChain.
1> Output directory: D:\TestXboxLive\Builds\build\bin\x64\Master
1> Cache directory: D:\TestXboxLive\Builds\build\obj\il2cppOutputProject\x64\Master
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>Using C++ compiler at: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe
1>il2cpp.exe didn’t catch exception: System.AggregateException: One or more errors occurred. —> System.ComponentModel.Win32Exception: The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.<RunWithResult>b__0(Object o) 1> --- End of inner exception stack trace --- 1> at Unity.IL2CPP.Building.ParallelFor.RunWithResult[D,T](D[ ] data, Func2 action)
1> at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector) 1> at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics) 1> at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics) 1> at il2cpp.Program.DoRun(String[ ] args) 1> at il2cpp.Program.Run(String[ ] args) 1> at il2cpp.Program.Main(String[ ] args) 1>---> (Inner Exception #0) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.b__0(Object o)<—
1>
1>—> (Inner Exception #1) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.<RunWithResult>b__0(Object o)<--- 1> 1>---> (Inner Exception #2) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.b__0(Object o)<—
1>
1>—> (Inner Exception #3) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.<RunWithResult>b__0(Object o)<--- 1> 1>---> (Inner Exception #4) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.b__0(Object o)<—
1>
1>—> (Inner Exception #5) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.<RunWithResult>b__0(Object o)<--- 1> 1>---> (Inner Exception #6) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.b__0(Object o)<—
1>
1>—> (Inner Exception #7) System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller)
1> at Unity.IL2CPP.Building.CompilationInvocation.Execute()
1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data)
1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.<RunWithResult>b__0(Object o)<--- 1> 1> 1>Unhandled Exception: System.AggregateException: One or more errors occurred. ---> System.ComponentModel.Win32Exception: The system cannot find the file specified 1> at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 1> at Unity.IL2CPP.Shell.Execute(ExecuteArgs executeArgs, IExecuteController controller) 1> at Unity.IL2CPP.Building.CompilationInvocation.Execute() 1> at Unity.IL2CPP.Building.CppProgramBuilder.ProvideObjectFile(IntermediateObjectFileCompilationData data) 1> at Unity.IL2CPP.Building.ParallelFor.<>c__DisplayClass1_02.b__0(Object o)
1> — End of inner exception stack trace —
1> at Unity.IL2CPP.Building.ParallelFor.RunWithResult[D,T](D[ ] data, Func2 action) 1> at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector)
1> at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
1> at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics)
1> at il2cpp.Program.DoRun(String[ ] args)
1> at il2cpp.Program.Run(String[ ] args)
1> at il2cpp.Program.Main(String[ ] args)
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets(44,5): error MSB3073: The command ““D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\build\il2cpp.exe” --libil2cpp-static --compile-cpp -architecture=x64 -configuration=ReleasePlus -platform=winrt -outputpath=“D:\TestXboxLive\Builds\build\bin\x64\Master\GameAssembly.dll” --data-folder=“D:\TestXboxLive\Builds\build\bin\x64\Master\” -cachedirectory=“D:\TestXboxLive\Builds\build\obj\il2cppOutputProject\x64\Master\” -generatedcppdir=“D:\TestXboxLive\Builds\Il2CppOutputProject\Source” --additional-defines=WINDOWS_UWP --additional-defines=UNITY_UWP --additional-defines=UNITY_WSA_10_0 --additional-defines=UNITY_WSA --additional-defines=UNITY_WINRT -dotnetprofile=Net45 -verbose --map-file-parser=“D:\TestXboxLive\Builds\Il2CppOutputProject\IL2CPP\MapFileParser\MapFileParser.exe”” exited with code -532462766.
1>Done building project “Il2CppOutputProject.vcxproj” – FAILED.
2>------ Build started: Project: TestXboxLive, Configuration: Master x64 ------
2>LINK : fatal error LNK1181: cannot open input file ‘D:\TestXboxLive\Builds\build\bin\x64\Master\GameAssembly.lib’
2>Done building project “TestXboxLive.vcxproj” – FAILED.
========== Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped ==========

Hmm, it’s picking up the C++ compiler from VS2015. I’ll try investigating why this could happen, but in the mean time you could install C++ support into VS2015 and it should fix the error:

At list this way it works… I already owe you 3 beers :wink:

Do you have idea why, if I try to use wait, VS says "
Assets\XboxLiveManager.cs(28,9): error CS4036: ‘IAsyncOperation<IReadOnlyList>’ does not contain a definition for ‘GetAwaiter’ and no extension method ‘GetAwaiter’ accepting a first argument of type ‘IAsyncOperation<IReadOnlyList>’ could be found (are you missing a using directive for ‘System’?)"

Maybe you’re missing “using System;” at the top of the source file, like the error suggests?

I don’t understand why, on Debug execution, I constantly receive this error right after splash screen:

onecoreuap\xbox\devices\api\winrt\pnpapiwrapper.cpp(385)\Windows.Gaming.Input.dll!00007FFD9EE72B8C: (caller: 00007FFD9EE76470) ReturnHr(1) tid(6ea0) 8685C003 'Turtle's Quest.exe' (Win32): Loaded 'C:\Windows\System32\deviceaccess.dll'. Cannot find or open the PDB file.
'Turtle's Quest.exe' (Win32): Loaded 'C:\Windows\System32\ffbroker.dll'. Cannot find or open the PDB file.
onecoreuap\xbox\devices\api\winrt\pnpdevicewatcher.cpp(503)\Windows.Gaming.Input.dll!00007FFD9EE76C72: (caller: 00007FFD9EE762AE) ReturnHr(2) tid(6ea0) 80070057 The parameter is incorrect.
onecoreuap\xbox\devices\api\winrt\pnpdevicewatcher.cpp(503)\Windows.Gaming.Input.dll!00007FFD9EE76C72: (caller: 00007FFD9EE762AE) ReturnHr(3) tid(6ea0) 80070057 The parameter is incorrect.
onecoreuap\xbox\devices\api\winrt\pnpdevicewatcher.cpp(503)\Windows.Gaming.Input.dll!00007FFD9EE76C72: (caller: 00007FFD9EE762AE) ReturnHr(4) tid(6ea0) 80070057 The parameter is incorrect.
onecoreuap\xbox\devices\api\winrt\pnpdevice.cpp(480)\Windows.Gaming.Input.dll!00007FFD9EE73A6F: (caller: 00007FFD9EE6B619) ReturnHr(5) tid(6ea0) 80070020 The process cannot access the file because it is being used by another process.
onecoreuap\xbox\devices\api\winrt\pnpdevicewatcher.cpp(503)\Windows.Gaming.Input.dll!00007FFD9EE76C72: (caller: 00007FFD9EE762AE) ReturnHr(6) tid(6ea0) 80070020 The process cannot access the file because it is being used by another process.
onecoreuap\xbox\devices\api\winrt\pnpdevicewatcher.cpp(503)\Windows.Gaming.Input.dll!00007FFD9EE76C72: (caller: 00007FFD9EE762AE) ReturnHr(7) tid(6ea0) 80070057 The parameter is incorrect.
onecoreuap\xbox\devices\api\winrt\pnpapiwrapper.cpp(385)\Windows.Gaming.Input.dll!00007FFD9EE72B8C: (caller: 00007FFD9EE76470) ReturnHr(8) tid(6ea0) 8685C003 onecoreuap\xbox\devices\api\winrt\pnpapiwrapper.cpp(385)\Windows.Gaming.Input.dll!00007FFD9EE72B8C: (caller: 00007FFD9EE76470) ReturnHr(9) tid(6ea0) 8685C003 Exception thrown at 0x00007FFDAB7F9E08 in Turtle's Quest.exe: Microsoft C++ exception: _com_error at memory location [0x000000AAFAFF8D50].
Exception thrown at 0x00007FFDAB7F9E08 in Turtle's Quest.exe: Microsoft C++ exception: _com_error at memory location [0x000000F69ABF8AD0].

The memory location changes.

Do you have a callstack for that?