Skip to content
Visual Studio Install and DirectX components information and building in VS authored by Glitchy Scripts's avatar Glitchy Scripts
......@@ -5,6 +5,19 @@ An FAQ for developers of XLiveLessNess and XLLN-Modules. Please notify us if the
## What version of MSVC Platform Toolset do I need? What version of Visual Studio do I need?
XLLN requires a minimum of C++11 and equates to (in my use of it) MSVC Platform Toolset v140 (VS 2015). I have tried v90 (VS 2008), v100 (VS 2010), v110 (VS 2012) and v120 (VS 2013) and they do not work. Although v120 was pretty close. But I want the features of v140 as a minimum. What also works is using VS 2017 or VS 2019 but also installing the 2015 v140 build tools.
## How do I install Visual Studio (2017) for use with XLLN and what individual components do I use?
These are the options I use when installing:
![Screenshot of VS 2017 Installer](https://xlln.glitchyscripts.com/images/VS2017Install.png)
Don't forget to install the Microsoft DirectX SDK (June 2010).
## LINK : fatal error LNK1104: cannot open file 'd3dx9.lib' or 'd3d9.lib' or 'dxguid.lib'
Install the Microsoft DirectX SDK (June 2010).<br>
If you get error code S1023 but it still installs the files at the specified location then you're probably fine and don't need to do anything more: https://docs.microsoft.com/en-us/troubleshoot/windows/win32/s1023-error-when-you-install-directx-sdk
## I'm trying to build in x64 mode and it doesn't work (e.g.): <br>error C2485: 'naked': unrecognized extended attribute. <br>error C4235: nonstandard extension used: '__asm' keyword not supported on this architecture. <br>warning C4312: 'type cast': conversion from 'DWORD' to 'LPVOID' of greater size. <br>warning C4302: 'reinterpret_cast': truncation from 'void *' to 'DWORD'. <br>warning C4311: 'type cast': pointer truncation from 'HMODULE' to 'DWORD'. <br>warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data.
These projects should be built in x86 / 32-bit mode. Don't build in x64 mode.
## What is `bin/TitleBinary.props` used for and why do you use it? How do I swap between debugging different GFWL Titles?
TitleBinary.props is an easy way to change the debugging and build output directory depending on which Title you are developing for. I personally have a directory junction (directory symbolic link) that's called `bin` in the XLLN repository and it actually points to `E:/Games/Halo2Vista/` (as an example).
......
......