"CRVS2010 Beta - BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be lo

Creating an instance of "Report Document" writes an error in Event viewer.
I debugged and found following line of code:
CrystalDecisions.CrystalReports.Engine.ReportDocument reportDocument = new CrystalDecisions.CrystalReports.Engine.ReportDocument()  generates error in Event Viewer as:
"The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded."
I checked for SAP forums for this error message and the most of the times answer was that earlier versions of Crystal Reports if installed can cause this error. VM on which this issue is occuring does not has any other versions. We had uninstalled previous versions and installed CR VS2010 Beta2.
However, I don't know the impact of this error. Any ideas?
Thanks,
Gulab.

See my comments on the thread linked below. I've been getting mixed messages as far as whether the KeycodeDecoder assembly is actually used or not in CR4VS2010 but from my own analysis, the ReportDocument class does make references to types defined in that assembly. Whether these error log entries indicate something harmful or not I'm not sure but it does seem to represent the failure of proper licensing.
Re: BusinessObjects.Licensing.KeycodeDecoder.dll could not be loaded

Similar Messages

  • CR4VS2010 - BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded

    Hi there,
    I am trying to use the Production Release of CR4VS2010 as found here:
    Crystal Reports for Visual Studio 2010 Production Release Now Available
    Whenever I try to run a report I get the following exception:
    Load report failed.
    Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack.
    at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
       at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)
       at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)
    If I try to use the Database Expert or Set the Database Location for a report VS2010 simply hangs.
    If I look in the event log, I see a Crystal Reports error:
    The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded.
    If I perform Code Analysis on my solution, I get this warning:
    Warning     4     CA0060 : The indirectly-referenced assembly 'BusinessObjects.Licensing.KeycodeDecoder, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' could not be found. This assembly is not required for analysis, however, analysis results could be incomplete. This assembly was referenced by: C:Program FilesSAP BusinessObjectsCrystal Reports for .NET Framework 4.0CommonSAP BusinessObjects Enterprise XI 4.0win32_x86dotnetCrystalDecisions.CrystalReports.Engine.dll.
    My environment is:
    Windows XP SP3
    VS2010 Ultimate
    I have other versions of CR installed
    I am targetting Framework 3.5 SP1 (Full)
    I have seen similar errors published with the Beta version and no real solution to them.
    I have to have side by side versions of VS and CR together.
    I am developing internal apps which will be deployed on servers where there will be side by side versions of VS
    Can anyone help please???
    Thanks,
    James

    Hi Ludek,
    We're getting there... taking your suggestion about using the samples... they worked fine.
    So I started digging deeper... I'm using code such as...
    using (var report = new ReportDocument())
        report.Load(filename);
    I need to do this because even though I have a "correctly designed" report when developing, the business might need to alter the layout at a later date. So I need to pick up whatever is on disk at the time.
    So I look in a subfolder of the deployed project for the .rpt file.
    And here's where things were going wrong at runtime...
    There was a SILLY bug in my code such that I wasn't picking up the correct folder... i.e. File.Exists(filename) == false
    So here is some sample code that demonstrates the problem:
    namespace MisleadingExceptionConsoleApp
        class Program
            static void Main(string[] args)
                using (var report = new CrystalDecisions.CrystalReports.Engine.ReportDocument())
                    report.Load(@"c:\temp\a_report_that_does_not_exist.rpt");
    When you run this, you get:
    -          ex     {"Load report failed."}     System.Exception {CrystalDecisions.Shared.CrystalReportsException}
    +          [CrystalDecisions.Shared.CrystalReportsException]     {"Load report failed."}     CrystalDecisions.Shared.CrystalReportsException
    +          Data     {System.Collections.ListDictionaryInternal}     System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
              HelpLink     null     string
    -          InnerException     {"Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack."}     System.Exception {System.Runtime.InteropServices.COMException}
    +          [System.Runtime.InteropServices.COMException]     {"Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack."}     System.Runtime.InteropServices.COMException
    +          Data     {System.Collections.ListDictionaryInternal}     System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
              HelpLink     null     string
    +          InnerException     null     System.Exception
              Message     "Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack."     string
              Source     "clientdoc.dll"     string
              StackTrace     "   at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)\r\n   at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options)\r\n   at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()"     string
    +          TargetSite     {Void Open(System.Object ByRef, Int32)}     System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
    +          Static members          
    +          Non-Public members          
              Message     "Load report failed."     string
              Source     "CrystalDecisions.CrystalReports.Engine"     string
              StackTrace     "   at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()\r\n   at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)\r\n   at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)\r\n   at MisleadingExceptionConsoleApp.Program.Main(String[] args) in g:
    Projects
    MisleadingExceptionConsoleApp
    MisleadingExceptionConsoleApp
    Program.cs:line 18"     string
    +          TargetSite     {Void EnsureDocumentIsOpened()}     System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
    +          Static members          
    +          Non-Public members          
    So to my mind, the InnerException here ("Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack.") is wrong and incredibly misleading!!! :O)
    So that answers my runtime issue.
    I still cannot open the Database Expert at design time... however, that is not a pressing issue for me right now.
    But if you do have any ideas on how to determine the root cause I'd like to get that sorted too.
    Many thanks,
    James

  • Keycode assembly (Licensing.KeycodeDecoder.dll) cannot be loaded

    I apologize if this has been posted about before here but in searching I can't find a reference to his with my exact same circumstances. I've seen posts regarding this for ASP sites and JAVA applications but not one specifically pertaining to a WinForms application.
    I'm deploying a VS2010 WinForms application using CRVS2010 to a clean virtual 32-bit WinXP SP3 machine.   I've installed the 32 bit CR runtime (CRRuntime_32bit_13_0.msi) along with my application, but previewing the report still generates an unhandled exception with the following entry from Crystal Reports in the Windows Application Event Log:
    The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded.
    These same reports all run fine under the VS2010 IDE on my development machine.  Is this a known error in the CR runtime and WinForms or have I missed something in the deployment process?

    Don,
    Ok, after you said you couldn't replicate it I started making a new 2010 project (rather than one upgraded from VS2005 whcih this one is) to just display a simple dataset  on a CR Preview screen.
    It was at that point that I found I have two different CR Viewers in my toolbox, one of which is grayed out (even with the target framework set to 4.0 and not 4.0 Client).  I have to click the "show all" option in the tool box to see the "Crystal Reports" tab, and the 14.x version one shows up under the default VS "Reporting" tab.  I did check my add/remove programs and only the 13.x version is listed so I'm sure the beta is not installed.
    [Click Here to see a screen cap of the toolbox|http://www.phx-is.com/images-web/CRViewers.png]
    The one that is NOT grayed out is version 14.0.2000.0 and the one that IS grayed out is 13.0.2000.0.  In checking my project, I have determined that the report viewer container in my program is pointing to:
    C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet\CrystalDecisions.Windows.Forms.dll
    Which shows a version of 13.0.2000.0 in my References for the project.  However, the 13.0.2000.0 control on my toolbox remains grayed out, which confuses me even more.
    Where to go from here?
    On a probably unrelated note:  Writing this test program, I also discovered that VS would lock up when I selected "Database Expert" option under "Database Fields' in the report designer ([See this thread|CRVS2010 Beta - Database expert crashes Visual Studio;) but following the advice in that thread and renaming my "C:\Temp" folder solved that problem.
    Edited by: Richard Wolf PIS on Jan 5, 2011 12:55 AM

  • BusinessObjects.Licensing.KeycodeDecoder.dll could not be loaded

    Hi we have developed an web appliaction using CR fro VS 2010 and framework 4.0 and upgrade the application to the release version of CR for VS 2010 (13.0)
    In the developmet enviroment everithing works well, but when we install the web application to the client web server whe we try to access to our report developed using CR we have always a blank page with this js error "bobj is undefined", and when we watch to the event viewer we find also an entry with this message "the assembly BusinessObjects.Licensing.KeycodeDecoder.dll could not be loaded"
    The web server enviroment is this one
    -Win2003 server 32 bit with IIS6
    -Framework 4 installed
    -CR 13.0 installed
    -no other CR version installed in the server
    -Web application running with an application pool with an administrator user
    Could someone help us?

    By the way, after some research it looks like this error originates from the ReportDocument class's constructor. It appears that during this process is where loading of resources takes place and also some license checking stuff. In this process somewhere a FileNotFoundException results in this error showing up in the Windows Application event log.
    I'm taking a look at the situations that may be causing this to happen but I can't find anything yet. My assumption is that this type of exception can be raised in cases where a file is not accessible due to permissions issues or hadn't been installed properly due to similar issues with permissions. Also I believe sometimes registry related errors can show up as FileNotFoundExceptions as well so I'm looking out for that too.
    UPDATE:
    It looks like the private ReportDocument.getMaxUsage() method that is called indirectly the first time a ReportDocument instance is created and this method appears to reference objects declared within the BusinessObjects.Licensing.KeycodeDecoder assembly such as the following types.
    com.crystaldecisions.common.keycode.KeycodeException
    com.crystaldecisions.common.keycode.KeycodeCollection
    com.crystaldecisions.common.keycode.KeycodeDecoderFactory
    These references are causing a FileNotFoundException when the assemblies are being resolved during the JIT processes and hence causing the errors that everybody has been seeing in their Windows Application error log. Since the exception is being caught and logged, this may not be negatively affecting the behavior of the new Crystal Reports for Visual Studio 2010 release but it does cause these error logs to pile up though and exceptions are also somewhat costly performance wise to raise so that could slow down the initialization of some apps just slightly.
    Edited by: jpierson on Nov 23, 2010 10:38 PM

  • 'BusinessObjects.Licensing.KeycodeDecoder' failed to load....

    How difficult can it be to get a new installation of VS2010 & CR FOR VS2010 configured where it works?????
    I have done the following:
    1) Installed VS 2010 Professional on a CLEAN & NEW copy of Windows 7 Ultimate.
    2) Installed CR for VS2010, 32 & 64-bit runtimes.  Tried and tried.  No dice.
    3) UNINSTALLED EVERY REFERENCE TO CRYSTAL REPORTS FOUND!!
    4) Rebooted the computer.
    5) Found CR for VS2010 SUPPORT PACK 2.  Downloaded it, both runtimes.
    6) Installed CR for VS2010.
    7) Installed CR 32-bit runtime.
    8) Installed CR 64-bit runtime.
    9) Opened my project.  Attempted to run.
    This is the same bogus message I've gotten from the start.  When I look for BusinessObjects.Licensing.KeycodeDecoder.dll (I'm assuming that's the file I should be looking for?) it is nowhere to be found on my computer.
    The assembly with display name 'BusinessObjects.Licensing.KeycodeDecoder' failed to load in the 'Load' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'BusinessObjects.Licensing.KeycodeDecoder, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified.
    Am I correct in thinking that I do not have to have a FULL version of Crystal Reports?  I only use Crystal Reports INSIDE Visual Studio 2005.  I know it's not 'embedded' exactly the same way it was, but COME ON!!  Literally wasted all day on this...to no avail.
    Any words of wisdom?

    Here are few links to the articles and threads where simillar issues are discussed,
    See if they help you in case if we are missing the obvious.
    [CR4VS2010 - BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded|CR4VS2010 - BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded]
    [1535792 - Error: "The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded"|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333533333335333733393332%7D.do]
    [1547065 - CRVS2010 is missing BusinessObjects.Enterprise.* assemblies |http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333533343337333033363335%7D.do]
    [Warning: CA0060 BusinessObjects.Licensing.KeycodeDecoder|Warning: CA0060 BusinessObjects.Licensing.KeycodeDecoder]
    [CRVS2010 - Exception BusinessObjects.Licensing.KeycodeDecoder not found|CRVS2010 - Exception BusinessObjects.Licensing.KeycodeDecoder not found]
    At below search, you will find many other such links, take a look.
    [http://www.sdn.sap.com/irj/scn/advancedsearch?query=%2527businessobjects.licensing.keycodedecoder%2527failedtoload|http://www.sdn.sap.com/irj/scn/advancedsearch?query=%2527businessobjects.licensing.keycodedecoder%2527failedtoload]
    - Bhushan.

  • CRVS2010 Beta - Error message when running on Server

    Hi,
    In my application everything runs correctly.  As soon as I publish to the server I get this error message.
    "Retrieving the COM class factory for component with CLSID {C0C99FA5-E1D3-494E-BE0C-73C19424F91C} failed due to the following error: 80000003 One or more arguments are invalid (Exception from HRESULT: 0x80000003). "
    The server is running 2003, IIS 6,  and has the new Beta Runtime already installed. 
    Does anyone know what this means and how to get around the issue?
    Thanks
    <Update>
    I have restarted the server as I noticed in other posts with the same issue and I'm still getting the error.
    Edited by: durata on Aug 18, 2010 2:52 PM
    Still having this error.  If anyone has seen this before and knows how to correct it please let me know.  Any help would be appreciated.
    Edited by: durata on Aug 23, 2010 10:18 PM

    This error occurs when trying to use the CR API.
    The error message in the App log is :
    The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded.
    I have changed my build from any cpu to x86 as seen in another post but still error continues.
    The server has the following installed.
    Crystal Reports for .Net 2.0(x86)
    Crystal Reports XI
    SAP Crystal Reports for Visual Studio 2010 Beta 2 - Redist (32bit)
    Thanks
    Darren
    On an addtional note.  I have searched the entire server and cannot find that dll anywhere.  I found keydecoder.dll but not the one listed above.
    Edited by: durata on Aug 27, 2010 8:18 PM

  • CRVS2010 Beta - Event ID 4353, VS2010 crash when database expert used

    I have been fighting this issue for a few days now.  My co-workers and I just recently received VS 2010 Pro licenses and installed successfully on our desktops.  Then, we all downloaded and installed the CR2010 beta 2.  The other two guys I work with had no problems creating their first reports using CR2010 beta 2, where as I end up with a crashed VS 2010 and an event logged as follows:
    Event Type:     Error
    Event Source:     Crystal Reports
    Event Category:     None
    Event ID:     4353
    Date:          9/13/2010
    Time:          12:00:33 PM
    User:          N/A
    Computer:     KFC-PM-71736
    Description:
    The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded.
    I have been reading the forum (as best I can with our terrible ISP here) and have not been able to find anything that corrects my issue.  All 3 of us have the same machine and similar products installed (VB 6 with CR, VS 2003 with CR, and VS 2005 with CR).   Again, the other two guys have not experienced any issues.
    Any help would be greatly appreciated.
    I am also trying to work thorugh getting a dump of the process so that I might try and troubleshoot more on my own, but have been unable to get the tools to work out for me (DebugDiag and Process Monitor and attaching process in a second VS 2010).

    That is interesting that the order may have made a difference.
    Anyhow, I don't have a clean machine in which to work from; I really need to get some sort of reports solution working with my VS 2010.  Can you recommend a production level Crystal Reports version that will work with VS 2010?  Maybe something that can be installed side-by-side with the other products I already have installed?
    I thought I might have read somewhere about 2008?
    Thanks for your help.  I felt like I was hitting up against a wall when everyone else seemed to get things to work, yet I all I got was a crashed VS 2010 (when attempting to use the Database Expert).
    Shay

  • CRVS2010 Beta - Crystal Reports crashes Visual Studio

    I have a problem in VS2010 whenever I attempt to use anything related to Crystal Report files (*.rpt). Attempting to open any rpt file or add one to a project causes VS2010 to crash. I have tried un- and re-installing several times to no effect. Any help would be welcomed.
    I'm running:
    Windows XP SP3 32-bit
    VS2010 Ultimate
    I can get the crash to occur in the following scenarios:
    Create a new code project. In that project, Add new item... Crystal Report file.  The report file will be created and then Visual Studio crashes due to an access violation exception. It generates the following error in the system event log:
    Event Type:     Error
    Event Source:     Microsoft Visual Studio
    Event Category:     None
    Event ID:     1000
    Date:          6/9/2010
    Time:          10:44:11 AM
    User:          N/A
    Computer:     A4731728
    Description:
    Faulting application devenv.exe, version 10.0.30319.1, stamp 4ba1fab3, faulting module unknown, version 0.0.0.0, stamp 00000000, debug? 0, fault address 0x00690072.
    Next case: Add existing item... an rpt file created by the above process. The file is successfully added to the project. However, opening the file to edit it causes a Microsoft Visual C++ Runtime Library error dialog to appear, followed by VS2010 crashing. I managed to pull the following errors out of the process:
    Unhandled exception at 0x7c812aeb in devenv.exe: 0xC0020001: The string binding is invalid.
    Unhandled exception at 0x791dfe16 in devenv.exe: 0xC0000005: Access violation reading location 0x00000034.
    The following error was added to the system event log:
    Event Type:     Error
    Event Source:     Crystal Reports
    Event Category:     None
    Event ID:     4353
    Date:          6/9/2010
    Time:          11:09:41 AM
    User:          N/A
    Computer:     A4731728
    Description:
    The description for Event ID ( 4353 ) in Source ( Crystal Reports ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: The keycode assembly, BusinessObjects.Licensing.KeycodeDecoder.dll, cannot be loaded.
    Similar crashes occur when I attempt to upgrade or open any old 2005 reports in 2010.
    Thanks.

    Hi J,
    Our PM just verified what you found also. This is another one of those "dll hell" problems that Microsoft is trying to fix by asking all to put their own dependency runtime into their own app folders.
    I don't think Mcafee is the cause. Our IT department push out McAfee as well and I don't have it in the system32 folder so it's likely Adobe installing it into the \system32 folder.
    You could try moving it to their app folder so it doesn't break Adobe or submit a ticket with Adobe to not drop that dll into the \system32 folder.
    For your info also the dll is a Crypto Package released by RSA, file security.... Part of the new feature of locking the RPT files by encrypting them.
    It may not be Adobe doing this either, check the install logs to find out who is placing the dll in the \system32 folder.
    Update - I just installed Adobe Reader and it wasn't Adobe Reader installing it so you guys will have to check the install logs and let that 3rd party software company know they need to alter their installer.
    At this point we don't need the dump file.
    Problem_Report:  ADAPT01438407
    Thanks again for all your time testing
    Don
    Edited by: Don Williams on Jun 21, 2010 10:34 AM

  • Keycodedecoder.dll failure still there in Crystal Reports 2010 SP1

    Hi
    I have a problem with getting an error that busineesobjects.licensing.keycodedecoder.dll not found for version 13.0.2000.0.
    I am using Crystal Reports for Visual Studio 2010 Support Pack 1 (where I thougt this problem was resolved)
    The exception does not show up by default but if I subscribe to the AssemblyResolve event I can see that the common language runtime tries to bind the keycodedecoder assembly and fails.
    You can reproduce it by creating a .Net 4 windows forms project in Visual Studio 2010 and have Crystal Reports 2010 SP 1 installed. Here is the code for reproducing it:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Diagnostics;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Reflection;
    using System.Text;
    using System.Windows.Forms;
    using CrystalDecisions.CrystalReports.Engine;
    namespace CR2010error
      public partial class Form1 : Form
        ReportDocument doc = null;
        public Form1()
          InitializeComponent();
          AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(QFE);
        private void button1_Click(object sender, EventArgs e)
          doc = new ReportDocument();
        private Assembly QFE(object sender, ResolveEventArgs e)
          // Format of e.Name:  [name-without-exe-and-dll], Version=[version], Culture=[culture], PublicKeyToken=[key]
          Assembly assembly = null;
          string[] parts    = e.Name.Split(',');
          if (4 <= parts.Length)
            assembly = HandleSignedAssembly(parts[0].ToLower().Trim(), parts[1].ToLower().Trim(), parts[2].ToLower().Trim(), parts[3]);
          return assembly;
        private enum FailType { NoFail, FileNotExist, NoVersionInfo, QfeError, LoadError, };
        private Assembly HandleSignedAssembly(string name, string version, string culture, string keyToken)
          if (name.ToLower().EndsWith("xmlserializers") || name.ToLower().EndsWith(".resources"))
            return null;
          Assembly assembly   = null;
          string[] parts1     = version.Split('=');
          string   wantVer    = parts1[1].Trim();
          string[] parts2     = wantVer.Split('.');
          int      wantMajor  = Convert.ToInt32(parts2[0]);
          int      wantMinor  = Convert.ToInt32(parts2[1]);
          int      foundMajor = -1;
          int      foundMinor = -1;
          string   path       = CreateFullPath(name);
          string   exception  = "";
          FileVersionInfo fvi = null;
          FailType failType   = FailType.NoFail;
          try
            if (!File.Exists(path))
              failType = FailType.FileNotExist;
          catch (Exception e1)
            failType = FailType.FileNotExist;
            exception = e1.Message;
          if (FailType.NoFail == failType)
            try
              fvi = FileVersionInfo.GetVersionInfo(path);
              foundMajor = fvi.FileMajorPart;
              foundMinor = fvi.FileMinorPart;
            catch (Exception e2)
              failType = FailType.NoVersionInfo;
              exception = e2.Message;
            if (null != fvi)
              if (wantMajor != foundMajor || wantMinor != foundMinor)
                failType = FailType.QfeError;
              else
                try
                  assembly = Assembly.LoadFrom(path);
                catch (Exception e3)
                  failType = FailType.LoadError;
                  exception = e3.Message;
                  assembly = null;
          if (null == assembly)
            Message_SignedAssembly(failType, exception, path, name, wantVer, null == fvi ? null : fvi.FileVersion);
          return assembly;
        private void Message_SignedAssembly(FailType failType, string exception, string path, string nameOfDll, string wantVersion, string foundVersion)
          StackTrace st;
          StackFrame sf = GetOriginatingStackFrame(out st);
          string referredBy = "";
          if (null != sf)
            if (-1 != sf.GetFileLineNumber())
              referredBy = string.Format(msgSource1, sf.GetMethod().DeclaringType, sf.GetMethod().Name, sf.GetFileLineNumber(), sf.GetFileColumnNumber());
          string reason = "";
          if (failType == FailType.FileNotExist)
            reason = string.Format(msgReason1, path);
          else if (failType == FailType.LoadError)
            reason = string.Format(msgReason2, exception);
          else if (failType == FailType.NoVersionInfo)
            reason = string.Format(msgReason3, exception);
          else if (failType == FailType.QfeError)
            reason = string.Format(msgReason4, wantVersion, foundVersion);
          else
            return;
          string msg = string.Format(msgBase1, referredBy, nameOfDll, reason);
          MessageBox.Show(msg, "QFE Resolver failed", MessageBoxButtons.OK, MessageBoxIcon.Warning);
          MessageBox.Show("StackTrace: " + st.ToString());
        private string CreateFullPath(string name)
          if (name.EndsWith(".resources"))
            name = name.Substring(0, name.Length - ".resources".Length);
          return AppDomain.CurrentDomain.BaseDirectory + name + ".dll";
        private StackFrame GetOriginatingStackFrame(out StackTrace st)
          st = new StackTrace(true);
          StackFrame sf = null;
          for (int i = st.FrameCount - 1; 0 <= i; --i)
            StackFrame frame = st.GetFrame(i);
            string s = frame.GetMethod().Name;
            if (frame.GetMethod().Name == "QFE")
              break;
            if (null != frame.GetFileName())
              sf = frame;
          return sf;
        #region Message
        static string msgBase1 =
    @"The program has failed to resolve a reference to a dll.
    Referenced dll is
    .dll
    Reason for failing:
        static string msgSource1 =
    Referred by
        static string msgReason1 =
    @"The referenced file does not exist. Searched for file:
    Copy the missing referenced file and retry again.";
        static string msgReason2 =
    @"The referenced file cannot be loaded.
        static string msgReason3 =
    @"Version information could not be obtained from the referenced file.
    Recompile the referenced file and retry again.
        static string msgReason4 =
    @"The referenced file is not compatible with the requested version.
    The requested version was , but the found file has version .
    According to the rules of QFE, these versions are not considered to be compatible.
    Replace the referenced file with a compatible version and retry.";
        #endregion

    I am only having version 13 (SP1) installed on my computer.
    If I run modules I can not see that crpe32.dll is loaded but there are fourteen other Crystal dll's loaded all with version 13 (from the below path)
    c:\program files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\
    Yes I konw it's just a warning but it's really enoying and I think it's bad if you said all references to this keycodedecoder.dll has been removed in version 13 but this warning has been there in the beta version and the final version and now also in the SP1 version, and you have told us it has been fixed at least for the SP1 version.
    I have tried my test project on a lot of other computers here at the company and we all get the same error so it's strange if you can't reproduce it. Can I e-mail you a zip-file of my test project or attach it in some way at this forum?
    I am running a 32 bit version of Windows 7 with CRforVS_redist_install_32bit_13_0_1 installed.
    Regards Tony

  • CRVS2010 Beta - Sax.DLL TypeLoadException

    I have seen a few threads on this form referencing an issue loading this DLL.  I have no references in my project to CR for VS2008, but am still receiving the issue.  I am building for x86 only. Can anyone assist?

    CRVS2010 Beta - Problems
    The issue is that when I run any ASP.Net page with an EntityDataSource on it, I reiceve a typeloadexception referencing SAX.dll.  9 out of 10 times I receive that exception, otherwise it runs fine.
    From the other thread, it appears that CrystalDecisions.PromptingClientSDK wants Sax.dll, which doesn't exist.
    Warning 1 Failed to load types from assembly 'CrystalDecisions.PromptingClientSDK, Version=14.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' so the assembly will be ignored.
    Could not load file or assembly 'Sax, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5ddc67619681886c' or one of its dependencies. Impossibile trovare il file specificato. (file not found)
    Warning 2 Failed to load types from assembly 'BusinessObjects.Enterprise.Sdk, Version=14.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' so the assembly will be ignored.
    Could not load file or assembly 'BusinessObjects.Enterprise.Sdk.ZipLib.netmodule' or one of its dependencies. Impossibile trovare il modulo specificato. (Module not found)
    I manually added a reference to the CrystalDecisions.PromptingClientSDK and BusinessObjects.Enterprise.Sdk and rebuilt but get the same warning, due to "Sax" that I cant find nowhere.

  • CRVS2010 Beta - Cannot find documentation on what needs to be installed

    My question is very elementary but I do not see anything in the release notes, etc. that tells me which of the 3 install files I need to iinstall or do I need to install all of them.
    1 - SAP Crystal Reports, version for Visual Studio 2010
    2 - SAP Crystal Reports runtime engine for .NET Framework 4 (32-bit)
    3 - SAP Crystal Reports runtime engine for .NET Framework 4 (64-bit)
    I want access to the WPF component in VS 2010 on a Win 7 64bit machine
    Do I install all 3?? In what order? 1 - 2 - 3 as I've shown?
    I have Crystal 2008 installed on my machine. Must I uninstall it to use the Crystal VS 2010 beta on that machine.
    To date I tried installing just #1 above. I went into my VS 2010 selected the WPF and it blew up VS 2010, I tried doing the same with Winform and it also took out VS 2010.
    I have since uninstalled everything. Could someone explain the procedure(s) for making the beta available to VS 2010 with a little more detail.
    Thanks

    Hi,
    You might want to check this [thread|Re: CRVS2010 Beta - about downloading file].
    Thanks,
    Saurabh

  • CRVS2010 Beta - Sporadic "This field name is not known. Details: errorKind"

    I am running CRVS2010 Beta 2 on the VS2010 trial version. I have been converting reports to this new version, but sometimes I get the error:
    This field name is not known. Details: errorKind Error in File XX11X1 {1X1111X1-1XX1-1X1X-111X-11111111X11X}.rpt: Error in formula tot-appr: '{@commited0}+{XX11X.AMT1} + {XX11X.AMT2} + {XX11X.AMT3} + {XX11X.AMT4} + {XX11X.AMT_FUT} ' This field name is not known. Details: errorKind
    I have done a lot of searching on this forum, Google, and Bing, but it seems everyone who receives this error message has just created the report or moved it to a new database, and the error is caused by a mis-pointed formula. I don't have that problem: in my case, the report usually works.
    I have tried querying the Oracle database immediately after receiving this error, and all the fields mentioned do exist, exactly where they ought to. The problem never exists when logging on with my own account, and sometimes works when logging on with other accounts, but I have not figured out a way to predict whether it will work or not.
    I have four reports I am running: one always works, two get this sort of error sometimes, and one (which is formatted differently) always shows up without errors, but is sometimes inexplicably blank. I cannot figure out in what way the report that always works is different from the two with this error (aside from obvious issues of layout and querying different tables, I mean).
    I'm at a loss for where to look next. I know this information won't be enough as-is, but I hope that your clarifying questions can help me find the error.
    Thank you for your consideration.
    EDIT: changed database names in case I get in trouble for revealing proprietary information, even though I don't think it's likely
    Edited by: sschaffer on Oct 25, 2010 9:57 PM

    Hello,
    Are you using a data Set? I believe the System.Data.OracleClient is the .NET Oracle client but not sure and not sure how reliable it is or what it's based on.
    What happens if you create a new report using the DataDirect OLE DB provide or Oracles OLE DB provide or use CR Oracle native driver?
    In the Connection Wizard select Oracle, that's the native driver, then when set log on info you just specify the Server name, User and PW, leave the database blank.
    Then what API's are you using to connect/set the log on info?
    I'm guessing that the error you are getting is likely an indexing problem in the table names etc. but not sure. if you search in this forum on "crlogger.dll" you could enable our database logging component and it may give you more info on what the cause is.
    Thank you
    Don

  • CRVS2010 beta - Date field from database does not display in report

    Hi there - can someone please help?!
    I am getting a problem where a date field from the database does not display in the report viewer (It displays on my dev machine, but not on the client machines...details given below)
    I upgraded to VS 2010
    I am using the CRVS2010 Beta
    My development machine is Windows 7 - and so is my fellow developer's
    We are using Microsoft SQL Server 2000
    We run the queries within VS and then we send the data table to VS using .SetDataSource
    We have a few reports which display the date on our dev machines (whether we run the EXE or from within Visual Studio)
    When we roll out to the client machines (running Windows XP SP3) then everything works, except that the date does not display (on quite a few reports)
    This is the only real issue I have had - a show stopper for me
    The rest works well - any input will be greatly appreciated
    Regards,
    Ridwan

    Hi Ridwan,
    After much testing I have it all working now using CRDB_adoplus.dll as a data source ( XML )
    Alter your Config file to look like this:
    <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
    </startup>
    Then using the code below, and CR requires the Schema to be able to read the date format.
    private void SetToXML_Click(object sender, EventArgs e)
    CrystalDecisions.CrystalReports.Engine.ReportDocument rpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
    ISCDReportClientDocument rcd;
    rcd = rptClientDoc;
    string connString = "Provider=SQLOLEDB;Data Source=dwcb12003;Database=xtreme;User ID=sb;Password=password";
    string sqlString = "Select * From Orders";
    OleDbConnection oleConn = new OleDbConnection(connString);
    OleDbDataAdapter oleAdapter = new OleDbDataAdapter(sqlString, oleConn);
    //OleDbDataAdapter oleAdapter2 = new OleDbDataAdapter(sqlString2, oleConn);
    DataTable dt1 = new DataTable("Orders");
    oleAdapter.Fill(dt1);
    System.Data.DataSet ds = new System.Data.DataSet();
    // We need the schema to get the data formats
    ds.WriteXml("c:
    sc.xml", XmlWriteMode.WriteSchema);
    //Create a new Database Table to replace the reports current table.
    CrystalDecisions.ReportAppServer.DataDefModel.Table boTable = new CrystalDecisions.ReportAppServer.DataDefModel.Table();
    //boMainPropertyBag: These hold the attributes of the tables ConnectionInfo object
    PropertyBag boMainPropertyBag = new PropertyBag();
    //boInnerPropertyBag: These hold the attributes for the QE_LogonProperties
    //In the main property bag (boMainPropertyBag)
    PropertyBag boInnerPropertyBag = new PropertyBag();
    //Set the attributes for the boInnerPropertyBag
    boInnerPropertyBag.Add("File Path ", @"C:\sc.xml");
    boInnerPropertyBag.Add("Internal Connection ID", "{680eee31-a16e-4f48-8efa-8765193dccdd}");
    //Set the attributes for the boMainPropertyBag
    boMainPropertyBag.Add("Database DLL", "crdb_adoplus.dll");
    boMainPropertyBag.Add("QE_DatabaseName", "");
    boMainPropertyBag.Add("QE_DatabaseType", "");
    //Add the QE_LogonProperties we set in the boInnerPropertyBag Object
    boMainPropertyBag.Add("QE_LogonProperties", boInnerPropertyBag);
    boMainPropertyBag.Add("QE_ServerDescription", "NewDataSet");
    boMainPropertyBag.Add("QE_SQLDB", "False");
    boMainPropertyBag.Add("SSO Enabled", "False");
    //Create a new ConnectionInfo object
    CrystalDecisions.ReportAppServer.DataDefModel.ConnectionInfo boConnectionInfo =
    new CrystalDecisions.ReportAppServer.DataDefModel.ConnectionInfo();
    //Pass the database properties to a connection info object
    boConnectionInfo.Attributes = boMainPropertyBag;
    //Set the connection kind
    boConnectionInfo.Kind = CrConnectionInfoKindEnum.crConnectionInfoKindCRQE;
    //*EDIT* Set the User Name and Password if required.
    boConnectionInfo.UserName = "";
    boConnectionInfo.Password = "";
    //Pass the connection information to the table
    boTable.ConnectionInfo = boConnectionInfo;
    //Get the Database Tables Collection for your report
    CrystalDecisions.ReportAppServer.DataDefModel.Tables boTables;
    boTables = rptClientDoc.DatabaseController.Database.Tables;
    //For each table in the report:
    // - Set the Table Name properties.
    // - Set the table location in the report to use the new modified table
    boTable.Name = "Orders";
    boTable.QualifiedName = "Orders";
    boTable.Alias = "Orders";
    rptClientDoc.DatabaseController.SetTableLocation(boTables[0], boTable);
    //Verify the database after adding substituting the new table.
    //To ensure that the table updates properly when adding Command tables or Stored Procedures.
    rptClientDoc.VerifyDatabase();
    MessageBox.Show("Data Source Set", "RAS", MessageBoxButtons.OK, MessageBoxIcon.Information);
    Thanks again
    Don

  • CRVS2010 Beta - Unable to Install CR  Beta 2 for Visual Studio 2010.

    I am unable to install Crystal Reports for VS2010.  "Failed to update cache for execution."
    There is a similar thread (locked) with this problem.  (CRVS2010 beta 2 - error during install)
    I have tried everything from this tread, and everything else I can think of.  I am out of options. 
    I appreciate any help.
    Thanks,
    MF
    OS: Windows XP SP(3).
    Running on local drive with Administrator ID.
    (Tail of SETUPENGINE.LOG)
    17:27:38.765 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.rosette-4.0-core-32\0\
    17:27:38.796 Cache: copying files from: C:\cr4vs2010\dunit\tp.sap.ncs-4.0-core-32\
    17:27:38.843 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.sap.ncs-4.0-core-32\0\
    17:27:38.890 Cache: copying files from: C:\cr4vs2010\dunit\tp.curl.cpp-4.0-core-32\
    17:27:38.984 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.curl.cpp-4.0-core-32\0\
    17:27:39.031 Cache: copying files from: C:\cr4vs2010\dunit\tp.sap.nwrfc-4.0-core-32\
    17:27:39.546 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.sap.nwrfc-4.0-core-32\0\
    17:27:39.625 Cache: copying files from: C:\cr4vs2010\dunit\tp.ooc.dotnet-4.0-core-32\
    17:27:39.796 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.ooc.dotnet-4.0-core-32\0\
    17:27:39.937 Cache: copying files from: C:\cr4vs2010\dunit\tp.pkware.cpp-4.0-core-32\
    17:27:40.140 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.pkware.cpp-4.0-core-32\0\
    17:27:40.203 Cache: copying files from: C:\cr4vs2010\dunit\tp.rsa.crypto-4.0-core-32\
    17:27:40.453 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.rsa.crypto-4.0-core-32\0\
    17:27:40.640 Cache: copying files from: C:\cr4vs2010\dunit\tools.srvtools-4.0-core-32\
    17:27:40.765 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tools.srvtools-4.0-core-32\0\
    17:27:40.812 Cache: copying files from: C:\cr4vs2010\dunit\foundation.jdsr-4.0-core-nu\
    17:27:40.906 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\foundation.jdsr-4.0-core-nu\0\
    17:27:40.921 Cache: copying files from: C:\cr4vs2010\dunit\tp.azalea.fonts-4.0-core-32\
    17:27:40.953 Cache: DU files cached in: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.azalea.fonts-4.0-core-32\0\
    17:27:40.968 Cache: copying files from: C:\cr4vs2010\dunit\tp.external.icu-4.0-core-32\
    17:27:41.968 Error: Could not move temp dest folder to dest folder.
    17:27:42.015 Error:   Temp dest folder: C:\Program Files\SAP BusinessObjects\InstallData\tmp\tp.external.icu-4.0-core-32
    17:27:42.078 Error:   Dest folder:    C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.external.icu-4.0-core-32\0\
    17:27:42.109 Error: Cache: error copying files to cache from: C:\cr4vs2010\dunit\tp.external.icu-4.0-core-32\ to: C:\Program Files\SAP BusinessObjects\InstallData\InstallCache\tp.external.icu-4.0-core-32\0\
    17:27:42.156 Error: CacheDUs - failed to cache DUs.
    17:27:42.171 Error: Failed to update cache for execution.  Program will exit.
    (SETUPEXE.LOG)
    17:25:18 Unable to open file :c:\Temp\2010.10.23.17.25.18\setupexe.log
    17:25:18 Welcome to setup.exe!
    17:25:18 Launching SetupEngine.exe: "C:\cr4vs2010\setup.engine\SetupEngine.exe"
    17:25:18 SetupEngine.exe command line:  -engine "C:\cr4vs2010\setup.engine
    " -bootstrapper "C:\cr4vs2010
    " -l "c:\Temp\2010.10.23.17.25.18"

    Hi MF,
    I had a problem with changing my default temp folders installing another third party program, not any CR stuff.
    I changed my temp folders back to the defaults and then it worked. I tried changing the permissions for all users on c:\temp and c:\tmp but that didn't help either for the other program.
    Only way it would work was to use the default temp folder structure.
    Try changing yours back to c:\User\appdata\local\temp
    Clear the temp folder out first and try again.
    Something, not sure if it was Windows or anti-virus or the firewall was blocking access. Odd that it gets part way so likely some third party dependency on that file doesn't like or get to your c:\temp folder.
    Thanks
    Don

  • CRVS2010 beta - Why to use useLegacyV2RuntimeActivationPol

    In .NET 4.0, while using Crystal Report 2010 we need to specify useLegacyV2RuntimeActivationPolicy attibute in
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
      </startup>
    because those Crystal Report dll's properties showing Runtime Version as v2.0.50727.
    But why Crystal Report 2010 DLL's are showing v2.0.50727 instead of v4.0?
    I dont want to use useLegacyV2RuntimeActivationPolicy attibute to run my application.
    Can SAP will provide the compaitable version of Crystal Report for .NET 4.0?
    Edited by: Jay _Dixit@Digital on Jul 1, 2010 12:32 PM
    Edited by: Jay _Dixit@Digital on Jul 1, 2010 12:36 PM
    Updated subject line
    Edited by: Don Williams on Jul 1, 2010 11:20 AM

    I would like an update on this issue.
    In other posts SAP representatives have put forward that this won't be addressed in the RTM, stating that this is a 'Microsoft issue'.
    Re: CRVS2010 Beta - file not found error crdb_adoplus.dll
    CRVS2010 Beta - crdb_adoplus.dll not found
    In this thread it sounds like there is something actually being done.
    Using the useLegacyV2RuntimeActivationPolicy=true is very impactful and effectively discards most of the effort put into the CLR 4.0.

Maybe you are looking for