Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7177841
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 28, 20262026-05-28T16:47:55+00:00 2026-05-28T16:47:55+00:00

This all started because I am trying to FxCop analyze my assembly, which references

  • 0

This all started because I am trying to FxCop analyze my assembly, which references Crystal Reports. Every time I do, FxCop can’t find a reference to an assembly named “BusinessObjects.Licensing.KeycodeDecoder“. In trying to locate this .dll, I’ve come to realize that it doesn’t exist at all… it’s not on the hard drive or the GAC, yet my application itself runs and displays reports just fine.

So that led me into some hunting…

In the CrystalDecisions.CrystalReports.Engine.dll file, if you open it in ILDASM, it does include the reference in its manifest:

.assembly extern BusinessObjects.Licensing.KeycodeDecoder
{
  .publickeytoken = (69 2F BE A5 52 1E 13 04 )                         // i/..R...
  .ver 13:0:2000:0
}

However, if I open the Fusion Logger (fuslogvw) and run my application, I can see Fusion loading a bunch of Crystal assemblies, including that CrystalDecisions.CrystalReports.Engine, but the referenced BusinessObjects.Licensing.KeycodeDecoder assembly is never even attempted to be loaded.

So… why? How does the .NET runtime know to skip, or not load that reference at runtime? Why doesn’t Fusion just load every referenced assembly recursively? I am just looking for some logic or reasoning or design intentions behind it all…

Perhaps equally as important, why can .NET projects be created that have references to .dlls, but those references aren’t enforced? IMO, it is wrong that SAP can ship Crystal assemblies that reference other assemblies that don’t even get installed.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-28T16:47:56+00:00Added an answer on May 28, 2026 at 4:47 pm

    It loads them purely on demand. The manifest is used to locate the correct assembly (including the correct version, strong name, etc.).

    As long as no one requests a type from the assembly, there is no reason to load it. Note that assemblies might also get loaded just for getting the Type of a class, for instance through an assembly-qualified type name in a configuration file.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

this all started because I wanted to display a toast message in a background
This error just started popping up all over our site. Permission denied to call
I see this all the time in Ruby: require File.dirname(__FILE__) + /../../config/environment What does
I do this all the time using VNC and it is very easy, but
I've struggled with this all day, I am trying to get a random number
I see this all the time: object literals declared such that some keys are
I've been doing this all the time: result = subprocess.call(['copy', '123*.xml', 'out_folder\\.', '/y']) if
I run into similar codes like this all the time in aspx pages: <asp:CheckBox
I am a newbie just started exploring Grails so that I can recommend this
So I've got all of this really neato PHP code and I've started doing

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.