MSBee and Crystal Reports .Net 9.0

Topics: For MSBee Users
Aug 16, 2006 at 11:48 PM
migrated from power toy forums
originally posted by misael7719
------------------------------------------------------

Hello to all,

I have developed a little Class library in VS.Net 2003, this project contain a little report, this report was created with Crystal Reports(That comes bundled with VS.Net 2003).

I have upgraded this class library using VS.Net 2005, after this, I have edited the .vbproj adding the line:

<Import Project="$(MSBuildExtensionsPath)\MSBee\MSBuildExtras.FX11.VisualBasic.targets" Condition=" '$(BuildingInsideVisualStudio)' == '' AND '$(TargetFX11)'=='true'" />

Once I have edited the .vbproj, when I try to build the project from the visual studio command line using the MSBee with this command: C:\<directory>\MSbuild MyPeopleLopkup.vbproj /t:Rebuild /p:TargetFX1_1=true, I get this Message:

Microsoft (R) Build Engine Version 2.0.50727.42
Microsoft .NET Framework, Version 2.0.50727.42
Copyright (C) Microsoft Corporation 2005. All rights reserved.

Build started 7/28/2006 12:32:04 PM.
__________________________________________________
Project "C:\VS2003\MyPeopleLookup\MyPeopleLookup.vbproj" (Rebuild target(s)):

Target CoreClean:
Deleting file "obj\FX1_1\Debug\ResolveAssemblyReference.cache".
Deleting file "obj\FX1_1\Debug\MyPeopleLookup.crReport.rpt".
Deleting file "obj\FX1_1\Debug\MyPeopleLookup.frmMain.resources".
Target ResolveAssemblyReferences:
Primary reference "CrystalDecisions.Enterprise.InfoStore, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304".
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3245: Could not resolve this reference. Could not locate the assembly "CrystalDecisions.Enterprise.InfoStore, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
For SearchPath "C:\Program Files\Common Files\Business Objects\2.7\Managed".
Considered "C:\Program Files\Common Files\Business Objects\2.7\Managed\CrystalDecisions.Enterprise.InfoStore.exe", but it didn't exist.
Considered "C:\Program Files\Common Files\Business Objects\2.7\Managed\CrystalDecisions.Enterprise.InfoStore.dll", but it didn't exist.
For SearchPath "bin\FX1_1\Debug\".
Considered "bin\FX1_1\Debug\CrystalDecisions.Enterprise.InfoStore.exe", but it didn't exist.

...

vbc : error BC30041: Maximum number of errors has been exceeded.
3 Warning(s)
110 Error(s)

Time Elapsed 00:00:01.28


Does any body can help me.
Aug 16, 2006 at 11:49 PM
originally posted by ivolvedMikeBrown
------------------------------------------------------

It looks like you are targeting Crystal 10 according to your build output. Perhaps this is what's causing your problem?

--------------------------------------------------------------------------------
What's in your toolbelt? http://www.codeplex.com/Wiki/View.aspx?ProjectName=wpftoolbelt
Aug 16, 2006 at 11:49 PM
originally posted by John DAddamio - MSFT
------------------------------------------------------

Hi,

The first error message idicates that msbuild cannot find one of your references: CrystalDecisions.Enterprise.InfoStore It is likely that many of the other errors stem from that sort of problem.

You will have to locate the assembly (or database or whatever it is) on your disk. (You may also have to repeat this process for the other assemblies that msbuild could not find such as CrystalDecisions.Enterprise.Framework. ) Once you have done located the assembly on disk, you have several choices:

1. You can add the file to your solution using Project->add existing item. (You will also have to delete the reference to CrystalDecisions.Enterprise.InfoStore and replace it with a reference to the one in your project)

2. You can simply replace the existing reference with a specific reference (i.e. delete the existing reference and add a new one that includes the full path).

3. Another possibility is to edit your vbproj file and find the reference for CrystalDecisions.Enterprise.InfoStore and add a HintPath tag to the <Reference> tag for CrystalDecisions.Enterprise.InfoStore. Here's an example from one of the MSBee test projects:

<Reference Include="SimpleDLL">
<Name>SimpleDLL</Name>
<HintPath>..\..\GoodSimpleDLL\SimpleDLL.dll</HintPath>
</Reference>

Yours might look more like this:

<Reference Include="CrystalDecisions.Enterprise.InfoStore">
<Name>CrystalDecisions.Enterprise.InfoStore</Name>
<HintPath>C:\VS2003\MyPeopleLookup\CrystalDecisions.Enterprise.InfoStore</HintPath>
</Reference>

But I made huge assumptions about the values for the path and name tags. You'll have to replace them with the correct values for your situation.

Any of those approaches will solve the first error. After you get all the references corrected, you may be in good shape.

However, I noticed a lot of "Version 2.0 is not a compatible version" error messages. Those may "just go away" when you correct the references. If not, you may have to resolve them individually. They may be caused by a license file which refers to V2.0 versions rather than assemblies intended to work with .NET 1.1.

Good luck!

John
Aug 16, 2006 at 11:49 PM
originally posted by John DAddamio - MSFT
------------------------------------------------------

Hi again,

You're definitely referencing the V10 of Crystal Reports which is bundled with VS 2005. Fix the references in one of the ways I suggested yesterday and you should be in pretty good shape.

Unless you customized the VS 2003 installation, you should find the V9 Crystal Reports at %ProgramFiles%\Microsoft Visual Studio .NET 2003\Crystal Reports. Similarly the V10 is normally at %ProgramFiles%\Microsoft Visual Studio 8\Crystal Reports

John D'Addamio