Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. Adding Reference to Dll (Class Library ) & Using statements

Adding Reference to Dll (Class Library ) & Using statements

Scheduled Pinned Locked Moved C#
csharpc++question
6 Posts 2 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Smith
    wrote on last edited by
    #1

    Hi, I would like to know: 1.what happens when you add a reference to a Class library in dotnet. 2.Is it something like a "implicit" linking in C++? 3.Can I make the library statically link to the exe? 4.And does the dll in dotnet internally have implementation for DLLAttach, Detach?

    :beer:

    Richard Andrew x64R 1 Reply Last reply
    0
    • S Smith

      Hi, I would like to know: 1.what happens when you add a reference to a Class library in dotnet. 2.Is it something like a "implicit" linking in C++? 3.Can I make the library statically link to the exe? 4.And does the dll in dotnet internally have implementation for DLLAttach, Detach?

      :beer:

      Richard Andrew x64R Offline
      Richard Andrew x64R Offline
      Richard Andrew x64
      wrote on last edited by
      #2

      1. It is similar to compile-time linking in C++ in that the CLR automatically loads the library 2. A little bit. 3. No. The CLR takes care of runtime loading and linking automagically. You are not allowed to have anything to do with it. 4. All necessary runtime loading and linking is taken care of by the CLR.

      The difficult we do right away... ...the impossible takes slightly longer.

      S 1 Reply Last reply
      0
      • Richard Andrew x64R Richard Andrew x64

        1. It is similar to compile-time linking in C++ in that the CLR automatically loads the library 2. A little bit. 3. No. The CLR takes care of runtime loading and linking automagically. You are not allowed to have anything to do with it. 4. All necessary runtime loading and linking is taken care of by the CLR.

        The difficult we do right away... ...the impossible takes slightly longer.

        S Offline
        S Offline
        Smith
        wrote on last edited by
        #3

        Thanks for the reply mate. I'm trying to look into the internals of managed world. The document says "CLR is hosted"? Does that mean CLR is per process stuff? is it not system wide?

        :beer:

        Richard Andrew x64R 1 Reply Last reply
        0
        • S Smith

          Thanks for the reply mate. I'm trying to look into the internals of managed world. The document says "CLR is hosted"? Does that mean CLR is per process stuff? is it not system wide?

          :beer:

          Richard Andrew x64R Offline
          Richard Andrew x64R Offline
          Richard Andrew x64
          wrote on last edited by
          #4

          The CLR is 100% a user mode component. No kernel mode stuff at all. Technically, the CLR maintains a single process space, and all .NET "processes" are segregated within that one process space. These are called Application Domains. The fact that they are really within the same process makes inter-application communication much simpler and faster.

          The difficult we do right away... ...the impossible takes slightly longer.

          S 1 Reply Last reply
          0
          • Richard Andrew x64R Richard Andrew x64

            The CLR is 100% a user mode component. No kernel mode stuff at all. Technically, the CLR maintains a single process space, and all .NET "processes" are segregated within that one process space. These are called Application Domains. The fact that they are really within the same process makes inter-application communication much simpler and faster.

            The difficult we do right away... ...the impossible takes slightly longer.

            S Offline
            S Offline
            Smith
            wrote on last edited by
            #5

            Thanks for the reply Richard. I'm trying to dig a little deep into it but most of the links show up a blunt high level Block diagrams , explaining the stacks in the framework. I need to a pointer to understand low level details of how CLR is invoked to deal managed Applications. Anywhere you can point me to? I want to know: When I execute a managed App, how does the OS route the exe to the CLR? Or CLR is mapped to every process? If CLR hosts all the managed Apps as domains? then how does it over ride 4GB limit per process in a 32bit system?

            :beer:

            Richard Andrew x64R 1 Reply Last reply
            0
            • S Smith

              Thanks for the reply Richard. I'm trying to dig a little deep into it but most of the links show up a blunt high level Block diagrams , explaining the stacks in the framework. I need to a pointer to understand low level details of how CLR is invoked to deal managed Applications. Anywhere you can point me to? I want to know: When I execute a managed App, how does the OS route the exe to the CLR? Or CLR is mapped to every process? If CLR hosts all the managed Apps as domains? then how does it over ride 4GB limit per process in a 32bit system?

              :beer:

              Richard Andrew x64R Offline
              Richard Andrew x64R Offline
              Richard Andrew x64
              wrote on last edited by
              #6

              Yes, those certainly are important questions. I'm not sure where to find such detailed information. Perhaps the MSDN blogs? Good luck.

              The difficult we do right away... ...the impossible takes slightly longer.

              1 Reply Last reply
              0
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              • Login

              • Don't have an account? Register

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • World
              • Users
              • Groups