vbnet编译
1. VB程序用什么编译
可以编译Visual Basic程序的开发工具版本有很多的,毕竟操作系统从Dos时代开始就有了VB1.0版本了,之前DOS下还有QBasic等。因为你并未说明你的代码是怎样的,只好给你多介绍几个了。
Quick Basic又叫QBasic和QB,是可以编译成能在DOS环境中运行的程序。
QB没有图形化界面也不支持面向对象开发的“.”点语法,但它支持Basic语言早期的行号写法,也支持基于结构的函数和过程。
早期写法
10 Dim i
20 For i=0 To 100
30 Print i
40 Next
当你发现语句前有行号,则需要用QBasic来编译。另外还有GWBasic等
Visual Basic又叫VB,1.0版本是DOS下运行的可视化编程工具,具体没用过但肯定支持标准Basic语法。我是从VB3.0接触VB的,之后一直到VB6时觉得虽然工具和编译环境改变了,但实际用法差不多。
基于VB3-VB6来编译,你的代码必须符合以事件触发执行的VB代码规范。在VB中代码是可以非线性运行的,这与过去有很大不同。如果的代码没有符合这种规范是需要修改后才能编译运行的。好在是VB6有编译类错误提示。
VB.Net家族就比较大了,从VB7一直到现在的VB2010都是一个家族的。这时的VB已经功能十分强大,代码写法也已经完全基于Class类,并具有完整的面向对象的支持。但有意思的是在VB.Net里支持无窗体界面命令面板的程序,因此QBasic类型的程序只要稍加修改便能编译运行在VB.Net这种环境里。当然对WinFrom也更强大,并且支持多线程等。
因此强烈建议你换到vb.net来编译,但需要注意的是有些关键字起了变化。比如VB6里的Long是VB.NET里的Integer。
说的这么详细相信你应该了解VB程序的编译工具了
2. 如何编译VB.NET中的类生成中间代码文件(dll文件)
dll不是中间代码,是最终编译文件,你建立项目的时候选“类库”就可以了
3. Visual Basic .NET的编译
.NET语言,包括VB.NET,它们所开发的程序源代码并不是直接编译成能够直接在操作系统上执行的二进制本地代码,而是被编译成为中间代码,然后通过.NET Framework的通用语言运行时(CLR)——执行。所有的.Net编程语言都被编译成这种被称为MSIL(Microsoft Intermediate Language )的中间代码,这与java的字节码类似。因此虽然最终的程序在表面上仍然与传统意义上的可执行文件都具有“.exe”的后缀名。但是实际上,如果计算机上没有安装.Net Framework,那么这些程序将不能够被执行。在程序执行时,.Net Framework将中间代码翻译成为二进制机器码,从而使它得到正确的运行。最终的二进制代码被存储在一个缓冲区中。所以一旦程序使用了相同的代码,那么将会调用缓冲区中的版本。这样如果一个.Net程序第二次被运行,那么这种翻译不需要进行第二次,速度会明显加快。
VB.NET代码之所以不直接编译成二进制机器码,是基于.NET跨平台这一目标的考虑。 Visual Basic .NET 2002
2002年Visual Basic .NET 问世,此后Visual Basic 包含在 Visual Studio套装中。该版本又被称为VB 7.0,是与C#一起在2002年发布的最初始的VB.net版本。C#是一门新设计.Net语言并且语法上和Java有一定的相似性,所以被大力宣传为微软对付JAVA的王牌,受到媒体极力关注。然而VB.NET则相反被错误地认为仅仅是VB的一个升级(故有时被称为VB7),它的受关注度也因此较低,当然VB社区以及喜欢Basic系列风格的语言的人还是很关注它的。那些试用过此版VB.NET的人在层层幕布下发现一个强大却艰深的语言。不过任何一种语言都是有弱点的,当然后面这一点也是.NET语言的共性,那就是运行的计算机上必须装相应版本的.Net framework。
Visual Basic .NET 2003
该版本是和.NET Framework 1.1一起发布的。新功能包括对.NET Compact Framework的支持和更好的VB升迁向导。并改进了运行状况,IDE稳定性(尤其是后台编译器),以及运行时RunTime稳定性。另外,VB.NET2003还有一个学院版Visual Studio .NET 2003 Academic Edition (VS03AE),它是分发给各国某些学者免费使用的版本。
Visual Basic .NET 2005
该版本是VB.Net的重大转变。但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。
Visual Basic .NET 2008
Visual Basic 2008于2008年2月1日发布。通过几年的发展,它已成为一种专业化的开发语言和环境。用户可用 Visual Basic 快速创建 Windows 程序,现在还可以编写企业水平的客户/服务器程序及强大的数据库应用程序。
Visual Studio 2010
Visual Studio 2010于2010年4月12日上市,其中包含 Visual Basic .NET 2010 。Visual Studio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。Visual Studio 2010集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。Visual Studio 2010同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview--CTP),并且支持开发面向Windows 7的应用程序。除了Microsoft SQL Server,它还支持 IBM DB2和Oracle数据库等。
Visual Studio 2012
从该版本开始VB.NET已没有单独发售的IDE了,微软给Visual Basic .NET 以及C#开发者的IDE就只有Visual Studio 了。该版本增加了modern(原metro)风格的支持等众多新特性。
Visual Studio 2015
增加了大量新特性,提升你的编写效率。对编译器和开发环境优化,提高编译速度,帮你重构代码和解决错误。最明显的14项改进见参考资料的14 Top Improvements in Visual Basic 14。 不能简单认为VB .net是VB的新版本。首先它们一个是完全面向对象的语言,而另一个不是完全面向对象的,其次VB .NET是构建于.Net framework之上的。当然,它们同属Basic系列语言,又同为微软所开发,语法上有一定的相似或沿袭是很正常的,但不能因此认为VB .NET是VB的升级版。
对于想从VB转到VB .NET的开发者来说,如果你只是喜欢Basic系列语言的代码风格,那么你的迁移会很顺利,如果你想沿袭之前VB的编程思想和习惯,你会很苦恼,原因之一就是VB .NET贯穿的是完全面向对象的思想,而VB不是。
微软为使VB开发者更容易转到VB .NET,兼容一些VB6函数和库的用法,但是比不上.NET语言中自带的可替换的函数和库来得高效,所以我们应该尽量使用.NET下的新方法。微软还提供了VB到VB .NET的自动转换器,虽几经改进,但仍无法转换全部代码,几乎所有非小型程序都需要人工修改以完成编译。为了运行优化,大多程序需要大量工作去重构。
争议与解释:许多资深的VB程序员抱怨VB .NET,因为VB .NET丢掉了许多不再发行的VB6中使用的大量语言constructs和用户界面功能,并且对保留下来的东西也改变了语意。其实不应该再把VB和VB .NET做功能上的比较,因为它们除了有些语法相似外,可以说是完全不同的两种语言。
Visual Basic .NET与VB都代表了Basic系列语言的编码风格,Visual Basic .NET是这种编码风格在.NET平台上的继承,而不是同系列语言VB的沿袭。
语言革命
* 1991年4月,Visual Basic诞生,Visual Basic 1.0 Windows版本发布。这个连接编程语言和用户界面的进步被称为Tripod(有些时候叫做Ruby),最初的设计是由阿兰·库珀(Alan Cooper)完成的。 1992年9月,Visual Basic 1.0 DOS版本发布。
* 1998年夏天,VB6.0发布。
* 2001年,Visual Basic .NET和.NET Framework发布。Visual Basic .NET正式诞生。
* 2005年,微软宣布将不会再对非.NET版本的VB进行支持。
*2010年,Visual Basic .NET随Visual Studio 2010发布,不再提供单独的Visual Basic .NET IDE。 MONO开发平台提供了一个VB.NET特性库(VB.NET-specific libraries)并着手研发一个编译器和Windows Forms GUI 库。由于各方面的原因,VB.NET开发的开源工具较C#发展得慢一些。
4. VB。net写出现的文件是伪编译码伪编译和真编译有什么不同和区别
只要在windows下生成的是exe,可执行文件就是真的编译。伪编译应该相当于java生成的字节码,并非可执行的exe。而是靠jvm java (virtual machine java虚拟机)再编译成机器码才执行。可以理解生成字节码的这个过程是伪编译。
个人认为
.net调试时应该是用托管代码的,再调试期间可能是伪编译。
至于VB.net是解析型语言,在调试期间不会生成文件,不能说是编译吧。
5. vb.net如何在命令行下编译dll
csc /t:library a.vb
6. VB .NET编程是否可以不依赖.NET Framework
这是典型对.net构架不理解造成的!
只要是.net编程,一定使用的是.net类库,必须是同运行版本的.net支持方可运行。而所谓的vb.net只是说编程的语言层使用的是vb语言而已。该语言在.net构架下被编译成为IL语言(MSIL,严格说来是IL的一个子集)。而上层的语言只是产生软件时所使用的一个不同语言规则而已,与IL已经没有任何相关性了。上层语言无论是C#还是VB,甚至是Java(J#)均只适应编程人员的一个策略,与整个构造没有多大的相关性。
.net的最终目的就是让不同的语言编程人员能协同工作,那么语言在其中的区别没有多大了,所有的运行核心都是由.net完成的,没有必须依赖于.net。这是没有任何疑问的。
vb.net就是.net,只是表示用VB语言人的称呼,用C#的则称其为C#.net,但不管是哪种,它是无法脱离.net的。
7. vb.net用的什么编译器
VB.NET的编译器包含在相应版本的.NET Framework中,比如VB9.0的编译器一般安装在C:\Windows\Microsoft.Net\Framework\v3.5\vbc.exe,需要用命令行的方式使用.一般开发时直接使用集成开发环境,比如Visual Studio或者Sharp Develop
8. vb.net编译完成后从release文件夹启动
在“调试”工具栏上选择Release,然后启动程序,当前工作目录就是Release文件夹
或者修改工程选项,在“调试”那页的“工作目录”指定
9. vb.net程序用什么编译器编译
vb.net用visual studio . net编译 2003、2005版本都可以
vb程序用visual studio 6.0编译
安装的时候把C++、J++等组件去掉就是了
10. VB.net VC.net 编译后区别
VB.net 和 C#.net 在编译后的程序,速度查不了太多。
(以下VB.net 简称为VB,C#.net简称为C#)
参考
;http://stackoverflow.com/questions/3836073/is-c-sharp-faster-than-vb-net
VB代码
ForiAsInteger=0ToConvert.ToInt32(Math.Pow(10,8))
Next
比C#快100倍
for(inti=0;i<=Convert.ToInt32(Math.Pow(10,8));i++)
{
}
这不是VB编译器生成循环的代码比C#快,而是VB只计算一次边界范围,C#每次都计算边界。
另一段C#...代码
intvalue=0;
for(inti=0;i<=NUM_ITERATIONS;i++)
{
value+=1;
}
这段代码比VB快
DimvalueAsInteger=0
ForiAsInteger=0ToNUM_ITERATIONS
value+=1
Next
因为VB每次都会执行越界检查。
所以通常来讲,VB和C#速度差距体现在编译后的IL代码上,通常简单的代码差距并不是很大,重点是编码水平。VB注重的是RAD(快速开发),更适合快速上马的项目。C#注重的是整体性,与系统以及.net还有很多微软的新技术所带来的新特性结合得更好,更适合于思考,因此大型项目C#更占一点优势。
C#有很多VB不能调用API,而且VB在很多情形下会进行类型检查,边界检查等等,所以心理上讲,C#要快一些。
如果是VC++的话,那么很显然,通常情况下,VC++整体性能会比C#好,但是在部分操作,比如大量字符串的时候,不见得比C#快多少。
//http://www.codeproject.com/Articles/212856/Head-to-head-benchmark-Csharp-vs-NET
这篇文章里做了性能测试,简单来讲,没有模板和多态、hashtable等等,VC++远比C#快,但是有了这些高级特性之后,VC++反而比C#慢。
性能来讲,通常都认为VC++>VC#.net>VB.net