ASP.NET中的三种编译方法

  假设虚拟目录为G:/Mydotnetsite/,在此目录下建一个名为bin文件夹(/bin目录必须是你的应用程序根目录的直接子目录。在默认情况下是/wwwroot/bin/,但是,如果你的应用程序被包含在一个虚拟目录中,那么必须在虚拟目录的根目录中创建/bin目录)用于存放被编译后的dll文件.

 

在安装好.Net Framework的情况下,将.cs或.vb文件编译成dll文件的方法有3种:

Hello.cs:
class Hello{
public static int Main(){
System.Console.WriteLine("Hello World!");
return 0;
}
}

Hello.vb:
Imports System

Namespace myComponents
Public Class Hello
Dim myRand As New Random
Public Function ShowHello() As String
Select myRand.Next( 3 )
Case 0
Return "Hello,Girls!"
Case 1
Return "Hello,Boys!"
Case 2
Return "Hello,Everybody!"
End Select
End Function
End Class
End Namespace


1.批处理文件方法(推荐):
把要编译的.cs或.vb文件(假设是Hello.cs和Hello.vb,上面代码)复制到上面提到bin文件夹下,然后打开记事本,输入如下5行代码:

.cs:
set outdir=Hello_c.dll
rem set libpath=C:/WINNT/Microsoft.NET/Framework/v1.1.4322/
rem set lib=%libpath%System.dll,%libpath%System.Data.dll,%libpath%System.Web.dll
set lib=System.dll,System.Data.dll,System.Web.dll

csc /t:library /out:%outdir% /r:%lib% Hello.cs

把文件另存为MakeCSC.bat(名字可以自定,但后缀名必须是.bat.即批处理文件),然后进入bin/文件夹双击这个批处理文件,这时如果看到一个Hello_c.dll文件生成,就表示编译成功了.

.vb:
set outdir=Hello_vb.dll
rem set libpath=C:/WINNT/Microsoft.NET/Framework/v1.1.4322/
rem set lib=%libpath%System.dll,%libpath%System.Data.dll,%libpath%System.Web.dll
set lib=System.dll,System.Data.dll,System.Web.dll

vbc /t:library /out:%outdir% /r:%lib% Hello.vb

同样,另存为MakeVB.bat,双击运行这个批处理文件,这时如果看到一个Hello_vb.dll文件生成,就表示编译成功了.

说明:两个文件的第一行代码中
set outdir=Hello_c.dll
set outdir=Hello_vb.dll

表示生成的dll文件名和位置,如果不把Hello.cs和Hello.vb放到bin目录下编译,则它们生成后也要放到bin文件夹下.

rem set libpath=C:/WINNT/Microsoft.NET/Framework/v1.1.4322/
表示编译器的位置,这里是win2000,如果是winxp,其中WINNT应为WINDOWS.

2.命令行方式:
命令所在的路径为:C:/WINNT/Microsoft.NET/Framework/v1.1.4322 (这里为win2000)。
在DOS命令符下进入上面的目录,将Hello.cs和Hello.vb复制到当前目录中,再用命令vbc /t:library /out:Hello_vb.dll Hello.vb或者csc /t:library /out:Hello_c.dll Hello.cs

也可以把Hello.cs和Hello.vb复制到c盘:
vbc /t:library /out:c:/Hello_vb.dll c:/Hello.vb
或者csc /t:library /out:c:/Hello_c.dll c:/Hello.cs
这样生成的Hello_vb.dll,Hello_c.dll就直接在c盘根目录下.

ok,完成编译,最后将生成的.dll剪切到bin目录中.

为了在控制台下的任何目录都可以执行该编译器程序而不必进入目录C:/WINNT/Microsoft.NET/Framework/v1.1.4322,就应该配置一个Path系统环境变量。Path=C:/WINNT/Microsoft.NET/Framework/v1.1.4322,如果已经存在这个Path系统环境变量,就在它的值后面加上;C:/WINNT/Microsoft.NET/Framework/v1.1.4322(注意前面有个分号),这样就可以运行:
vbc /t:library /out:G:/Mydotnetsite/bin/Hello_vb.dll G:/Mydotnetsite/bin/Hello.vb
(或者vbc /t:library /r:System.dll,System.Data.dll,System.Web.dll
/out:G:/Mydotnetsite/bin/Hello_vb.dll G:/Mydotnetsite/bin/Hello.vb)

csc /t:library /out:G:/Mydotnetsite/bin/Hello_c.dll G:/Mydotnetsite/bin/Hello.cs

完成编译.

3.使用Visual Studio.Net自带的编译功能也可编译.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值