c++ project assembly name

Topics: User Forum
Sep 27, 2011 at 7:58 PM


Im getting the following for a C++ project:

  SHFB (0,0): errorBE0067: Unable to obtain assembly name from project file 'c:\ci\blah\blah\blah.vcxproj' using Configuration 'Release', Platform 'AnyCPU'

I know diddly about c++ projects so I'm not sure what to do here. Can anyone help me?

Thanks muchly.

Sep 28, 2011 at 3:05 PM

Make sure the configuration and platform used by SHFB match the ones used by the C++ project to build the output (i.e. Release and AnyCPU).  C++ projects weren't supported in their past due to their non-standard format.  VS 2010 projects do use MSBuild format project files now but I haven't tested them fully with SHFB to see if it can process them correctly.  If the configuration and platform settings change doesn't fix it, let me know.  The workaround is to add the assembly and XML comments files as documentation sources rather than the project.  If you can't get the project file to work and you can e-mail me the .vcxproj file, I'll see about getting it to work with SHFB.  I don't need any of the code or supporting files, just the project file itself.  My e-mail address is in the About box in the GUI and in the footer of the pages in the help file.



Sep 28, 2011 at 8:00 PM

Ah, yeah, this is a native code assembly (Win32) and there doesnt seem to be any xml doc output for this, at least I cant find it.  So, I'll skip it - we really need to kill this off anyway.  Death to C ! :)


Sep 29, 2011 at 7:52 PM

I just read that C++ does recognize doc comments (using /// just like C#), so it's reasonable to expect that an xml doc file should be built, if a person sets that build option, of course.

With the new importance of C++ for building Win8 Metro apps (fastest possible, being native), I think if SHFB does create documentation for C++, it will be a useful requested feature in the future. I hope to try using SHFB with C++ in the future. It may be a while, but I'll let you know what I find.

Sep 30, 2011 at 2:23 AM

Bear in mind that Sandcastle only works with managed assemblies.  As long as the C++ assemblies are managed it will work but it won't for native assemblies as the tools can't parse them for the necessary API information.



Sep 30, 2011 at 12:55 PM

Thanks, Eric! That clarifies the only case where C++ projects might be documented with Sandcastle--managed code (I think they call them C++/CLI) projects.

Good to know.