Unable to add missing Microsoft.VisualBasic reference

Topics: Developer Forum, User Forum
Jun 1, 2010 at 5:13 PM
Edited Jun 1, 2010 at 7:08 PM
Hello,

I'm using VB Express 2010 on Windows 7 System. After migrating an older Project (from VB 2005 und Net 2.0) and recompilation the generation of the help file with Sandcastle fails (Details below). Reading the FAQ leads to the suggestion to add the missing references manually. But this fails because VS rejects this attempt with the hint, that the reference is added automatically by the builder.

Then as a test I created a new very simple "Hello World" Console Application project and removed all unneeded references. Only the reference to System (Console.Writeline) remained, but the result was the same, e.g. missing assembly reference: Microsoft.VisualBasic

The log shows that the older v3.5\MSBuild.exe is used, on my system there is also the v4.0.30319\MSBuild.exe, but changeing the version in the Helper GUI did not affect the path for reflection.

Any ideas or suggestiosn,
thx, Rainer

-------------------------------------------------------------------------
Detailed error Message
-------------------------------------------------------------------------
Generating reflection information...
[C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe]
GenerateRefInfo:
  MrefBuilder (v2.4.10520.1)
  Copyright ¸ Microsoft 2006
  Info: Loaded 1 assemblies for reflection and 0 dependency assemblies.
MREFBUILDER : error : Unresolved assembly reference: Microsoft.VisualBasic (Microsoft.VisualBasic, 
    Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a) required by HelpersLibrary
    Last step completed in 00:00:01.1860
Coordinator
Jun 1, 2010 at 8:22 PM

The May 2008 release of Sandcastle doesn't support .NET 4.0 without the latest Sandcastle Styles patch.  The patch is current as of the VS 2010 RC release so you will need to update the supplied MRefBuilder.exe.config to include the .NET 4.0 RTM version number.

Eric

 

Jun 1, 2010 at 8:23 PM
I found a workarround, which might be ok for most of the projects for a while. Before compiling the project select

My Project ==> Compile ==> Extrended Options

Change Target Framework from Version 4.0 to 3.5

Regards, Rainer

Jun 1, 2010 at 8:49 PM
Edited Jun 1, 2010 at 8:52 PM

Hello Eric,

your suggestion did not work, but lead me the right direction. The Framework Version on my Windows 7 System is v4.0.30319 (and not v4.0.30128 as installed with VS 2010 RC).

Adding an additional line in the configuration MrefBuilder config file solved the problem.

Regards, Rainer

 

 

Aug 5, 2010 at 9:05 AM

Hi Rainer

What was the actual entry that you put into your MrefBuilder config to solve the problem. I have the same issue, tried Eric's solution and no luck, I have the same framework version, but was not sure what the entry is supposed to look like that solved your problem.

Thanks

Rob

Aug 5, 2010 at 1:31 PM
Hello Gashy,
 
after installing the patch and adding the correct version line as described everything worked as espected in my environment.
 
Regards, Rainer
Aug 5, 2010 at 5:11 PM

Hi Rainer, thanks for your quick reply.

I managed to get it working by installing the latest versions of sandcastle and builder. The correct version line I wanted an example of as I wasn't sure what needed (format) to be added. So if you have an example of the actual xml line you used, that would be great.

Thanks

Rob

Coordinator
Aug 5, 2010 at 6:23 PM

The latest release of Sandcastle (June 2010) contains the necessary MRefBuilder.exe.config with the correct version number entry for the release .NET 4.0 Framework so it will work as expected.  You can take a look at it if you're interested in the format.

Eric