Thought I would share, I just completed setting up VC++ 2010 Express roughly following the old orbiterwiki tutorial for 2005. I used the "Microsoft SDK for Windows 7 and .NET Framework 3.5" and have been able to successfully compile the ShuttlePB.dll with no errors, 1 warning:
After Googling, found the following in the documentation from VS2010 Beta Testing:
One thing regarding setup of the compiler though, I did see someone mention in another thread that the Platform SDK's are no longer needed as of VC++ 2008 Express. Is this truly the case?
**EDIT** I should specify that I compiled this project from the Orbiter2010 SDK and against its libraries. Any work I end up doing for 2006 will be done on my older laptop, if at all.
---------- Post added at 11:16 PM ---------- Previous post was at 10:38 PM ----------
Just watched Computerex's video for VC++2008 Express. Going to follow that format for a VC++ 2010 Express project for Orbiter 2010.
And I'm now realizing this would have made a better blog post rather than a thread...
I need sleep...
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Orbiter2010\Orbitersdk\samples\ShuttlePB\Release\ShuttlePB.dll) does not match the Linker's OutputFile property value (C:\Orbiter2010\Modules\ShuttlePB.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
After Googling, found the following in the documentation from VS2010 Beta Testing:
2.4.1.9 Mismatched TargetPath and Linker.OutputFile can generate MSBuild warning message MSB8012: TargetPath does not match the Linker's OutputFile property value
In Visual Studio 2010, when TargetPath and %(Linker.OutputFile) do not match, a message that resembles the following may be generated:
warning MSB8012: TargetPath(sample\Debug\sample.dll) does not match the Linker's OutputFile property value (sample\Debug\sample.ocx). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
This change is by design. We recommend that you modify your project files so that $(TargetName) matches %(Linker.OutputFile). The following are the two possible errors you might get because of this change:
(1) If %(Link.OutputFile) does not match $(OutDir)$(TargetName)$(TargetExt), you may get build error from MT (mt.exe : general error c10100b1: Failed to load file "xxx". The system cannot find the file specified) when building application targeting release configuration and any configuration when "Linker.Enable Incremental Linking" is disabled.
(2) If %(Link.OutputFile) does not match $(OutDir)$(TargetName)$(TargetExt), you may get an error that specifies that the component cannot be found when components are registered.
To resolve this issue:
In the case that TargetExt does not match the file name extension of %(Linker.OutputFile), you can change the TargeExt, TargetPath, OutDir property on the property page to match that of %(Linker.OutputFile) or (Lib.OutputFile), depending on the type of the project.
One thing regarding setup of the compiler though, I did see someone mention in another thread that the Platform SDK's are no longer needed as of VC++ 2008 Express. Is this truly the case?
**EDIT** I should specify that I compiled this project from the Orbiter2010 SDK and against its libraries. Any work I end up doing for 2006 will be done on my older laptop, if at all.
---------- Post added at 11:16 PM ---------- Previous post was at 10:38 PM ----------
Just watched Computerex's video for VC++2008 Express. Going to follow that format for a VC++ 2010 Express project for Orbiter 2010.
And I'm now realizing this would have made a better blog post rather than a thread...
I need sleep...
Last edited: