当前位置:首页 » 编程软件 » net什么文件可以编译成dll

net什么文件可以编译成dll

发布时间: 2022-05-29 12:10:55

Ⅰ .net中怎样写dll文件

使用csc命令将.cs文件编译成.dll的过程很多时候,我们需要将.cs文件单独编译成.dll文件, 操作如下:打开命令窗口->输入cmd到控制台->cd C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322转到vs.net安装的该目录下->执行csc命令csc /target:library File.cs->在该目录下产生一个对应名字的.dll文件(前提:把.cs文件放到C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322目录下)csc命令的方式很多,请参考以下译File.cs 以产生 File.execsc File.cs 编译 File.cs 以产生 File.dllcsc /target:library File.cs 编译 File.cs 并创建 My.execsc /out:My.exe File.cs 通过使用优化和定义 DEBUG 符号,编译当前目录中所有的 C# 文件。输出为 File2.execsc /define:DEBUG /optimize /out:File2.exe *.cs 编译当前目录中所有的 C# 文件,以产生 File2.dll 的调试版本。不显示任何徽标和警告csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs 将当前目录中所有的 C# 文件编译为Something.xyz(一个 DLL)csc /target:library /out:Something.xyz *.cs 编译 File.cs 以产生 File.dllcsc /target:library File.cs这个就是我们使用最多的一个命令,其实可以简单的写成csc /t:library File.cs,另外的一个写法是 csc /out:mycodebehind.dll /t:library mycodebehind.cs,这个可以自己指定输出的文件名。csc /out:mycodebehind.dll /t:library mycodebehind.cs mycodebehind2.cs,这个的作用是把两个cs文件装到一个.dll文件里举例(摘于网络)一、 动态链接库 什么是动态链接库?DLL三个字母对于你来说一定很熟悉吧,它是Dynamic Link Library 的缩写形式,动态链接库(DLL) 是作为共享函数库的可执行文件。动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DLL 还有助于共享数据和资源。多个应用程序可同时访问内存中单个 DLL 副本的内容。 和大多数程序员一样,你一定很使用过DLL吧。也曾感受到它的带给你程序设计和编码上的好错吧今天我想和大家探讨一个主题:如何在C#创建和调用DLL(动态链接库), 其实在很大意义上而讲,DLL让我更灵活的组织编写我们的应用程序,作为软件设计者,可一个根据它来达到很高的代码重用效果。下面我来介绍一下在C#中如何创建和调用DLL。二、准备工作 我们需要对我们接下来要做的事情做个简单的介绍,在本文我们将利用C#语言创建一个名为 MyDLL.DLL的动态链接库,在这个动态链接库文件中我们将提供两个功能一个是对两个参数交换他们的值,另一个功能是求两个参数的最大公约数。然后创建一个应用程序使用这个DLL。运行并输出结果。三、创建DLL让我们创建以下三个C#代码文件:1、 MySwap.csview plain to clipboardprint?//该语句不要加入到程序中using System; namespace MyMethods { public class SwapClass { public static bool Swap(ref long i,ref long j) { i = i+j; j = i-j; i = i-j; return true; } } }2、MyMaxCD.csview plain to clipboardprint?//该语句不要加入到程序中using System; namespace MyMethods { public class MaxCDClass { public static long MaxCD(long i, long j) { long a,b,temp; if(i>j) { a = i; b = j; } else { b = i; a = j; } temp = a % b; while(temp!=0) { a = b; b = temp; temp = a % b; } return b; } } } 需要注意的是:我们在制作这两个文件的时候可以用Visual Studio.NET或者其他的文本编辑器,就算是记事本也可以。这两个文件虽然不在同一个文件里面,但是他们是属于同一个namespace(名称空间)这对以后我们使用这两个方法提供了方便。当然他们也可以属于不同的名称空间,这是完全可以的,但只是在我们应用他们的时候就需要引用两个不同的名称空间,所以作者建议还是写在一个名称空间下面比较好。 接下来的任务是把这两个cs文件变成我们需要的DLL文件。方法是这样的:在安装了Microsoft.NET Framework的操作系统上,我们可以在Windows所在目录下找到Microsoft.NET目录。在这个目录下面提供了C#的编译器,CSC.EXE运行:csc /target:library /out:MyDLL.DLL MySwap.cs MyMaxCD.cs,完成后可在本目录下面找到我们刚才生成的MyDLL.DLL文件/target:library 编译器选项通知编译器输出 DLL 文件而不是 EXE 文件。后跟文件名的 /out 编译器选项用于指定 DLL 文件名。如果/out后面不跟文件名编译器使用第一个文件 (MySwap.cs) 作为 DLL 文件名。生成的文件为MySwap.DLL文件。 OK!我们创建动态链接库文件的任务完成了,现在是我们享受劳动成果的时候了,下面我将介绍如何使用我们所创建的动态链接库文件。 四、使用DLL 我们简单写一个小程序来测试一下我们刚才写的两个方法是否正确,好吧,跟我来:MyClient.csview plain to clipboardprint?//该语句不要加入到程序中using System; using MyMethods; //这里我们引用刚才定义的名称空间,如果刚才的两个文件我们写在两个不同的名称空间 class MyClient { public static void Main(string[] args) { if (args.Length != 2) { Console.WriteLine("Usage: MyClient <num1> <num2>"); return; } long num1 = long.Parse(args[0]); long num2 = long.Parse(args[1]); SwapClass.Swap(ref num1,ref num2); // 请注意,文件开头的 using 指令使您得以在编译时使用未限定的类名来引用 DLL 方法 Console.WriteLine("The result of swap is num1 = {0} and num2 ={1}",num1, num2); long maxcd = MaxCDClass.MaxCD(num1,num2); Console.WriteLine("The MaxCD of {0} and {1} is {2}",num1, num2, maxcd); } }若要生成可执行文件 MyClient.exe,请使用以下命令行:csc /out:MyClient.exe /reference:MyLibrary.DLL MyClient.cs/out 编译器选项通知编译器输出 EXE 文件并且指定输出文件名 (MyClient.exe)。/reference 编译器选项指定该程序所引用的 DLL 文件。五、执行若要运行程序,请输入 EXE 文件的名称,文件名的后面跟两个数字,例如:MyClient 123 456六、输出The result of swap is num1 = 456 and num2 = 123The MaxCD of 456 and 123 is 3七、小结动态链接具有下列优点: 1、节省内存和减少交换操作。很多进程可以同时使用一个 DLL,在内存中共享该 DLL 的一个副本。相反,对于每个用静态链接库生成的应用程序,Windows 必须在内存中加载库代码的一个副本。 2、节省磁盘空间。许多应用程序可在磁盘上共享 DLL 的一个副本。相反,每个用静态链接库生成的应用程序均具有作为单独的副本链接到其可执行图像中的库代码。 3、升级到 DLL 更为容易。DLL 中的函数更改时,只要函数的参数和返回值没有更改,就不需重新编译或重新链接使用它们的应用程序。相反,静态链接的对象代码要求在函数更改时重新链接应用程序。 4、提供售后支持。例如,可修改显示器驱动程序 DLL 以支持当初交付应用程序时不可用的显示器。 5、支持多语言程序。只要程序遵循函数的调用约定,用不同编程语言编写的程序就可以调用相同的 DLL 函数。程序与 DLL 函数在下列方面必须是兼容的:函数期望其参数被推送到堆栈上的顺序,是函数还是应用程序负责清理堆栈,以及寄存器中是否传递了任何参数。 6、提供了扩展 MFC 库类的机制。可以从现有 MFC 类派生类,并将它们放到 MFC 扩展 DLL 中供 MFC 应用程序使用。 7、使国际版本的创建轻松完成。通过将资源放到 DLL 中,创建应用程序的国际版本变得容易得多。可将用于应用程序的每个语言版本的字符串放到单独的 DLL 资源文件中,并使不同的语言版本加载合适的资源。 使用DLL 的一个潜在缺点是应用程序不是独立的;它取决于是否存在单独的 DLL 模块。以上为转载

Ⅱ c#.net怎么将自定义控件的.cs文件编译成.dll控件

引用多个外部程序集,使用单个/reference选项,要使用分号分隔的列表指定每个程序集:
csc
/t:library
/out:MyCodeLibrary.dll
/r:MyCodeLibrary.dl;NewLib.dll
simpleType.cs

Ⅲ ASP.NET中的如何将.cs文件编译成.dll文件

服务器上没有CS文件是因为是已经发布过的,假如你改ABC.ASPX.CS这个页面,改完后先把程序发布一下,找到ABC.ASPX先覆盖到服务器上,然后看这个页面源码第一行,最后有个APP_WEB_????,然后找你刚发布的BIN文件夹找以这个DLL放到服务器的BIN里就行了。

Ⅳ 关于asp.net中的CS文件怎么生成DLL文件

例如有index.aspx

index.aspx.cs
两个文件,
现在要把index.aspx.cs
编译成
DLL
文件,可以这样写:
csc
/out:yourdir\index.dll
/t:library
/r:bin/myConnBase.dll
index.aspx.csTop
生成的index.dll需放在你的虚拟目录根下的bin下即可。或你的网站根下的bin文件夹中

Ⅳ C#.net 怎么生成dll

在你的项目里面添加个类库(文件->添加->新建项目->类库) 然后把这个类库在你的项目里面添加引用 这个类库最后生成的就是 动态链接库 文件了 添加引用后 项目会自动调用dll里面的东西

添加引用

在解决方案资源管理器里面 右键"引用"节点 "添加引用" 浏览到你生成的dll文件即可 或者你可以直接选择项目标签 浏览到类库项目即可

再以后的项目中 如果有同样的或者类似的东西要做 比如说数据库访问的一些内容都写到类库里 以后用到的时候直接在现有项目里添加引用就行了 这样省去了代码的重新编写 这样就实现了代码的重用性

Ⅵ 怎样把ASP。NET中的CS文件编译成DLL文件

如果希望从计算机上的任何子目录调用 csc.exe,可能需要调整路径。 命令行语法规则 当解释操作系统命令行上给出的参数时,C# 编译器代码使用下面的规则: 参数用空白分隔,空白可以是一个空格或制表符。 ^ 字符 (^) 未被识别为转义符或者分隔符。该字符在被传递给程序中的 argv 数组前,完全由操作系统的命令行分析器进行处理。 无论其中有无空白,包含在双引号 ("string") 中的字符串均被解释为单个参数。带引号的字符串可以嵌入在参数内。 前面有反斜杠的双引号 (\") 被解释为原义双引号字符 (")。 反斜杠按其原义解释,除非它们紧位于双引号之前。 如果偶数个反斜杠后跟双引号,则每对反斜杠中的一个反斜杠放置在 argv 数组中,并且双引号被解释为字符串分隔符。 如果奇数个反斜杠后跟双引号,则每对反斜杠中的一个反斜杠放置在 argv 数组中,双引号由其余的反斜杠“转义”,使原义双引号 (") 被放置在 argv 数组中。 命令行示例编译 File.cs 以产生 File.exe: csc File.cs 编译 File.cs 以产生 File.dll: csc /target:library File.cs 编译 File.cs 并创建 My.exe: csc /out:My.exe File.cs 通过使用优化和定义 DEBUG 符号,编译当前目录中所有的 C# 文件。输出为 File2.exe: csc /define:DEBUG /optimize /out:File2.exe *.cs 编译当前目录中所有的 C# 文件,以产生 File2.dll 的调试版本。不显示任何徽标和警告:

Ⅶ ASP.NET有什么办法可以直接把文件夹和其中的.cs编译成dll文件吗。

Win + R -> cmd ->回车 ->cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
csc XXXXX.cs
这样就编译单个cs文件了,不过要求这些CS文件都没有引用其他的类库,否则参数很长,我也不记得了,你可以网络csc命令编译C#代码等关键字

Ⅷ 如何在.Net的C#中制作DLL文件

编辑生成DLL文件

打开Microsoft Visual Studio 2010, 新建【windows窗体应用程序】的项目。

在项目的基础上新建类库,点击右键,【添加】-【新建项目】。

选择【类库】,名称为【ini】。

在新增的类库项目中编辑代码,新增class为【Read_ini】。

新增方法【ReadIniValue】,从类别、关键字、文件目录中获取参数。
设置临时值读取参数;
设置是否比较本行数据的标志位;
读取整个文本数据,如果是空行或数据行,则继续读取。

在读取的行数据中分别判断类别和关键字,找到目标参数。

返回目标参数给主程序。

代码编辑完成后,在项目上右键生成DLL。

在debug目录中可以看到生成的ini.dll文件。

将ini.dll文件复制到主项目的debug目录下。

Ⅸ .net CS文件编译成DLL

1.编译使用csc.exe编译就可以了,你有vs为啥不用vs直接编译???
2.反编译很难,没有官方的软件!但是可以用SDK里面的反汇编工具
3.是的!
4.我没有学过Java,但是类库是一个程序的集合,就是程序集,他可能是一个没有main函数的程序,也可能有,但是他的功能就是给别的程序调用用的。
5.当然那是你在发布自己的程序时候自动生成的,有生成选项你可以看看,一般直接生成的话都是一页一个类库(dll),当然你也可以一个一个类库的写。
6.dll就是一个打不开的应用程序,你可以做一个exe程序,把它编译成exe就可以打开,编译成dll就打不开了。但是可以被别的程序引用,使用这个本来应该是exe的dll的程序里面的功能!
7.在vs的解决方案管理器里面右键直接添加引用就可以了!
话外:不单单是dll可以被引用啊,exe也是可以被别的程序引用啊!

热点内容
at24c02存储芯片的参考文献 发布:2024-05-22 07:28:26 浏览:727
微信apiphp 发布:2024-05-22 07:26:49 浏览:148
编译kernel的流程 发布:2024-05-22 07:26:47 浏览:939
u盘头戴式耳机怎么连接安卓手机 发布:2024-05-22 07:25:30 浏览:603
pc换图脚本 发布:2024-05-22 07:24:00 浏览:111
辅助脚本是怎么制作的 发布:2024-05-22 07:15:04 浏览:686
怎么在服务器中找人 发布:2024-05-22 07:06:23 浏览:104
ftp建立win10 发布:2024-05-22 06:27:02 浏览:845
苹果怎么改安卓系统 发布:2024-05-22 06:21:21 浏览:20
飞儿精品教程解压密码 发布:2024-05-22 06:21:17 浏览:903