[xsde-users] Building VS2015 Project that uses XSDE

Hollenback, Luke Luke.Hollenback at ballardtech.com
Mon Oct 19 19:15:02 EDT 2015

Hey there,

We are trying to use XSD/e for a Windows desktop project that may be expanded in the future to use more of the "embedded" features of the choice.

Currently, I am simply trying to build the Hello World example in Visual Studio 2015 Community Edition on Debug. On Release, the same linker errors that I will show below happen, as well as a few more. I similarly have tried Visual Studio 2013 Community Edition with no success. I have access to a non-community edition version of the environment, but not on my current machine. I don't believe that is an issue, but correct me if I am wrong.

Upon building the solution, which has all of the basic, pimpl, and pskel header and implementation files included in it, as well as the driver.cxx file, a mess of linker errors get spit out. You can check them out at this pastebin: http://pastebin.com/raw.php?i=tgRf6zxv. The C/C++ command line arguments listed in the project property page are:

/GS /analyze- /W3 /Gy /Zc:wchar_t /Zi /Gm- /O2 /Fd"Release\vc140.pdb" /Zc:inline /fp:precise /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oy- /Oi /MD /Fa"Release\" /EHsc /nologo /Fo"Release\" /Fp"Release\VSProj.pch"

Similarly, the linker command line arguments listed in the project property page are:

/OUT:"D:\Working\XSDe Hello World\VSProj\Release\VSProj.exe" /MANIFEST /NXCOMPAT /PDB:"D:\Working\XSDe Hello World\VSProj\Release\VSProj.pdb" /DYNAMICBASE "xsde.lib" /MACHINE:X86 /OPT:REF /SAFESEH /INCREMENTAL:NO /PGD:"D:\Working\XSDe Hello World\VSProj\Release\VSProj.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\VSProj.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"D:\XSDe\libxsde\xsde" /TLBID:2

The weirdest part is that I can build this Hello World project manually using CL and LINK. More specifically, by using the following commands from the developer command prompt (obviously with almost none of the arguments that Visual Studio is using):

CL /ID:\XSDe\libxsde driver.cpp hello.cxx hello-pskel.cxx hello-pimpl.cxx
LINK driver.obj hello.obj hello-pskel.obj hello-pimpl.obj D:\XSDe\libxsde\xsde\xsde.lib

But I cannot, for example, use the LINK command with the .OBJ files generated by a Visual Studio build.

We are hoping to be able to use XSD/e for this project because it, up until this point, has looked like the perfect answer to all of our needs. I'm sure that there is something simple that is being missed. Is there a particular switch that Visual Studio throws in the mix that is throwing everything off, potentially? I have read that XSD/e can be used in a desktop project no problem, which aligns with my intuition. I have also seen people talking about using it with Visual Studio-albeit, older versions than I am using. Please teach me how, or even if it is possible to, use XSD/e in a modern Visual Studio project.

Thank you so much,
I'm looking forward to hearing back,

This E-mail is confidential. It may also be legally privileged. If you are not the addressee you may not copy, forward, disclose or use any part of it. If you have received this message in error, please delete it and all copies from your system and notify the sender immediately by return E-mail.

Internet communications cannot be guaranteed to be timely, secure, error or virus-free. The sender does not accept liability for any errors or omissions.

More information about the xsde-users mailing list