15

Running any of the Crystal Reports 10.5 redistributables (CRRedist2008_x86.msi, CRRedist2008_x64.msi or CRRedist2008_ia64.ms) is supposed to, according to the Crystal_Runtime2008.txt file, deploy the following files:

CRVsPackageLib.dll
CrystalDecisions.CrystalReports.Design.dll
CrystalDecisions.CrystalReports.Engine.dll
CrystalDecisions.Data.AdoDotNetInterop.dll
CrystalDecisions.Enterprise.Desktop.Report.dll
CrystalDecisions.Enterprise.Framework.dll
CrystalDecisions.Enterprise.InfoStore.dll
CrystalDecisions.Enterprise.PluginManager.dll
CrystalDecisions.Enterprise.Viewing.ReportSource.dll
CrystalDecisions.Keycode.dll
CrystalDecisions.ReportAppServer.ClientDoc.dll
CrystalDecisions.ReportAppServer.CommLayer.dll
CrystalDecisions.ReportAppServer.CommonControls.dll
CrystalDecisions.ReportAppServer.CommonObjectModel.dll
CrystalDecisions.ReportAppServer.Controllers.dll
CrystalDecisions.ReportAppServer.DataDefModel.dll
CrystalDecisions.ReportAppServer.DataSetConversion.dll
CrystalDecisions.ReportAppServer.ObjectFactory.dll
CrystalDecisions.ReportAppServer.ReportDefModel.dll
CrystalDecisions.ReportAppServer.XmlSerialize.dll
CrystalDecisions.ReportSource.dll
CrystalDecisions.Shared.dll
CrystalDecisions.Web.dll
CrystalDecisions.Windows.Forms.dll

But I am unable to find these anywhere on the PC. Does anyone know what location they're installed to? All the other DLLs listed in the .txt file appear in

c:\Program Files\Business Objects\Common\2.8\bin

Jedidja
  • 16,610
  • 17
  • 73
  • 112
  • What is the problem by the way? Is the redist not installing properly? – Paul Sasik Jan 13 '10 at 18:58
  • I'm not sure..I'm trying to run an application with only VS 2010 + CR redist package and it's crashing not being able to find assemblies. – Jedidja Jan 14 '10 at 12:56
  • Do you realize that the CR 10.5 is the crystal reports that comes with VS 2008? Does 2010 come with another version? – dotjoe Jan 14 '10 at 14:32
  • It doesn't come with 2010 at all. There was a lot of back-and-forth on this until the final word came from SAP in December (http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/14514) – Jedidja Jan 14 '10 at 18:11
  • In the end, I was able to use the CR 2008 SP2 redist package (http://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=56787567), extract the two assemblies from the GAC I needed, and all was well. – Jedidja Jan 14 '10 at 18:12
  • This seems to still be a problem with SAP/crystal installers 2012, version 14. I am posting [here](http://scn.sap.com/thread/3175725) about my adventures. I found this thread having had to retrace your steps, looking for info on how to copy stuff out of the assembly. Which if you use command prompt, for me, is, cd \windows\assembly\gac_misl and start looking. – Levin Magruder May 17 '12 at 20:01

2 Answers2

16

the GAC

Starting with the .NET Framework 4, the default location for the global assembly cache is %windir%\Microsoft.NET\assembly. In earlier versions of the .NET Framework, the default location is %windir%\assembly

dotjoe
  • 26,242
  • 5
  • 63
  • 77
  • 2
    They are there indeed..now to figure out why the application refuses to recognize their presence :) – Jedidja Jan 14 '10 at 12:57
  • 1
    In case anyone is wondering how to extract them from the GAC, there is a nice, simple method here: http://stackoverflow.com/questions/714907/how-to-extract-an-assembly-from-the-gac/714929#714929 – Jedidja Jan 14 '10 at 13:19
  • Did you ever find out why the application wouldn't load them from the GAC? – Tara McGrew Dec 20 '11 at 23:27
4

Use Process Explorer on a running version of the app, such as your dev machine, to see from where all of its DLLs are loaded.

EDIT:

Process Explorer is a great way to find out what DLLs are loaded into any Windows process be it from the GAC or any other location. This method (using ProcEx) is general, but IMO useful in many scenarios. ProcEx would indeed show you that a program's Crystal Redist was being loaded from the GAC.

SUGGESTED EDIT:

Find .NET DLLs in this way:

  1. Find your task in the process list of Process Explorer
  2. Double click on the task to show Task Properties
  3. At .NET Assemblies tab open plus(+) sign, display App Domain etc. (only .NET processes will have this tab. Non.NET process will not have the tab at all)
Paul Sasik
  • 79,492
  • 20
  • 149
  • 189
  • Mr Paul Sasik please you re edit your answer in order to i can up vote it, – Harry Sarshogh May 27 '13 at 06:43
  • i founded DLL references in Process Explorer sotfware by this way : 1-Find My Task ,2-Double Click on Task for Showed Task Properties , At .NET Assemblies tab , left side of screen , open Plus(+) sign, display App Domain that is true, also thanks your time Mr Paul Sasik , sorry for last my judgement ,thank you – Harry Sarshogh May 27 '13 at 07:15
  • @AliSarshogh: Again, thank you for the reconsideration. Please find your comment added into the answer. Great idea to share that information in the answer! – Paul Sasik May 27 '13 at 08:20