From Listing 1-5, we can see (in bold) that our sample application performed a questionable action (terminating a thread) and that the debuggers stopped execution when this action was encountered. In addition to stopping execution, the MDA also outputted more detailed information such as the thread IDs of the threads that terminated the worker thread and the worker thread itself.

Being able to uniquely identify and describe an assembly is important to ensure that loading and binding of assemblies is performed without conflict and dependencies on other configurable data. By making an assembly self contained, it takes great strides toward eliminating the problem of DLL hell. NET applications. Framework assemblies are good examples of shared assemblies. NET applications, it is critical that strong name guarantees are placed on the assembly. Shared assemblies must fully define versioning to allow the CLR to bind to the right version of the assembly.

Exe. When ILDasm is launched, double-click on the Manifest section, which opens up a new window with all the manifest data. exe. Single-file Assembly Multi-file Assembly Assembly Manifest Module 1 Module 1 Module 2 Module 2 Module 3 Assembly Manifest Figure 2-5 Example of single- and multi-file assemblies Module 3 Assembly Manifest 41 Figure 2-6 Using ILDasm to view assembly manifest data listed in this section. Please note that each external assembly reference contains the public key token for signed assemblies as well as the version of the assembly being referenced.

Download PDF sample

Rated 4.73 of 5 – based on 28 votes