组装和DDL之间的区别 [英] difference between assembly and ddl

查看:92
本文介绍了组装和DDL之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

asp.net中的Assembly和 ddl dll有什么区别
请帮助我
谢谢你
问候
joti parkash

what is difference between assembly and ddl dll in asp.net
please help me
thanks your
regards
joti parkash

推荐答案

这似乎令人惊讶,但是.NET中没有DLL的特殊概念.本质上,该文件名末尾仅包含四个字母.中心概念是程序集",它由一个或多个可执行的模块"组成(不要将模块与另一个程序集引用的程序集混在一起).用.NET开发的DLL只是一个可执行模块.

关于它有两个注意事项.首先,Visual Studio仅支持创建单模块程序集.但是.NET库有明显的不同.您可以使用Reflection加载装配件并找出其模块.直接使用的编译器可以创建模块并将其组成程序集.

另一件事是:DLL扩展"(在NTFS中没有真正的扩展-谢天谢地;扩展只是文件名的结尾)用于类库,而EXE用于应用程序.这只是Visual Studio的默认设置.程序集可执行模块的文件名可以是任何名称.

现在,分类为应用程序和库已不具有基本特征.本质上,任何应用程序的入口程序集(通常称为EXE,但我们记住这只是一个主模块)只是一个类库.绝对每个程序集都是一个类库.

而且,任何"EXE"程序集都可以像任何其他库一样被任何其他程序集引用.这不是很常见,但有时在插件体系结构中使用.代替使用单独的插件接口库,该库被实现为主机应用程序的一部分.在这样的设置中,"DLL"(插件)引用了主机("EXE"),因此主机程序集被使用两次:作为应用程序的引用程序集和入口程序集.它永远不会造成任何问题.应用程序组装的唯一区别是具有入口点方法(主").

另一方面,非EXE程序集可以用作应用程序.您可以使用自己的自定义界面创建具有不同条目类型的备用主机.不能用作通过Shell正常加载的应用程序的程序集可以使用替代方法和替代主机进行加载.

另请参见:程序集,DLL和EXE [ ^ ].

-SA
It might seem surprising, but there is no a special notion of DLL in .NET. This is essentially no more than a four letters ending the file name. The central concept is "assembly" which is composed of one or more executable "modules" (don''t mix up modules with assemblies referenced by another assembly). A DLL developed in .NET is just an executable module.

There are two notes about it. First, Visual Studio supports only the creation of a single-module assembly. The .NET libraries however make clear difference. You can load an assembly using Reflection and find out its modules. Compilers used directly can create modules and compose the into assemblies.

Another thing is this: a DLL "extension" (in NTFS there are no real extensions — thanks goodness; an extension is merely an end of a file name) is used for class libraries, and EXE — for applications. This is only a Visual Studio default. The file name of an assembly executable module can be anything.

Now, the classification into applications and libraries does not have fundamental character. Essentially, any application''s entry assembly (what is usually called EXE, but we remember that this is only a main module) is just a class library. Absolutely every assembly is a class library.

Moreover, any "EXE" assembly can be referenced by any other assembly like any other library. This is not very usual, but is used sometimes in plug-in architectures. Instead of using a separate plug-in interface library, such library is implemented as a part of the host application. In such settings, a "DLL" (plug-in) references the host ("EXE"), so the host assembly is used twice: as a referenced assembly and an entry assembly of application. It never causes any problem. The only difference of application assembly is having an entry point method ("Main").

From the other hand, non-EXE assemblies can be used as applications. You can create an alternative host with different entry types, using your own custom interfaces. Assemblies which cannot be uses as applications loaded normally via the Shell could be loaded using alternative method and alternative host.

See also: Assembly, DLL and EXE[^].

—SA


语录中:

.NET框架,一个程序集是用于部署,版本控制和安全性的已编译代码库.有两种类型:进程程序集(EXE)和库程序集(DLL).

the .NET framework, an assembly is a compiled code library used for deployment, versioning, and security. There are two types: process assemblies (EXE) and library assemblies (DLL).


http://en.wikipedia.org/wiki/.NET_assembly [


http://en.wikipedia.org/wiki/.NET_assembly[^]

exe can be executed directly but dlls cannot.


正如SA所说:DLL在.Net中没有任何术语,而不是Windows(OS)组件.

DLL: Windows DLL包含库代码,供Windows上运行的任何程序使用. DLL可以包含结构化或面向对象的库.

组装 [ ^ ] :程序集是用于部署,版本控制和安全性的已编译代码库.有两种类型:进程程序集(EXE)和库程序集(DLL).

希望对您有所帮助:)
As SA said: DLL is no any term in .Net rather than these are windows(OS) component.

DLL:A Windows DLL contains library code to be used by any program running on Windows. A DLL may contain either structured or object oriented libraries.

Assembly[^]:an assembly is a compiled code library used for deployment, versioning, and security. There are two types: process assemblies (EXE) and library assemblies (DLL).

hope it helps :)


这篇关于组装和DDL之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆