注册 登录
编程论坛 VB.NET论坛

新手问题2

wube 发布于 2015-05-14 21:28, 2501 次点击
想学又不知道该从何学起,不知道能否我贴个VB6源码,请板上大神帮忙翻译成的源码,
让我知道两种之间哪边有差异。最好用VS2012版的,也最好使用.Net的写法,以方便我可以快速了解。

内容蛮简单的,源码在公司我自己写的小工具,明天上班我才能贴。
14 回复
#2
wube2015-05-15 11:07
程式功能:遍历资料夹搜寻特定档案制成列表,再将档案内关键字搜出,汇集成新的档案列表,
最后产出一个CSV的资料列表,请高人帮转写法....谢谢.
只有本站会员才能查看附件,请 登录
#3
TonyDeng2015-05-15 13:17
就是我以前给你写过的C#的那种方法,用空间的Directory类,有现成的提取目录清单功能。所有.NET语言都使用同一个类库,是语言无关的。

[ 本帖最后由 TonyDeng 于 2015-5-15 13:39 编辑 ]
#4
wube2015-05-15 13:50
因为我觉得对相同问题的写法,应该会和VB6不同,才能发挥.NET的功能,
不然用2012但是还是维持用VB6的旧式写法的话,那换编译器就没什么意义了.

而且我对.NET实在是没什么概念,所以需要有能够对照的源码,也许可以不用从头再来,
说穿了就是想偷懒吧.
#5
wube2015-05-15 13:52
以下是引用TonyDeng在2015-5-15 13:17:41的发言:

就是我以前给你写过的C#的那种方法,用空间的Directory类,有现成的提取目录清单功能。所有.NET语言都使用同一个类库,是语言无关的。


难道C#跟的写法是一样的吗???
#6
TonyDeng2015-05-15 13:54
和vb6是两种完全不同的语言,没可比性、没继承性。这就像Java和Javascript一样,除了名字沾点关系,内里是根本不一样的。
#7
TonyDeng2015-05-15 13:54
以下是引用wube在2015-5-15 13:52:47的发言:

 
 
难道C#跟的写法是一样的吗???

是的,类库和函数名、用法是完全一样的。
#8
wube2015-05-15 13:57
这样的话依版主的经验该如何学比较好?
每次要写脑袋里都会浮出一大堆VB6的逻辑和代码说.
#9
TonyDeng2015-05-15 13:57
http://baike.baidu.com/view/459376.htm?fromtitle=VB.NET&fromid=1198656&type=syn

#10
TonyDeng2015-05-15 13:59
以下是引用wube在2015-5-15 13:57:39的发言:

这样的话依版主的经验该如何学比较好?
每次要写脑袋里都会浮出一大堆VB6的逻辑和代码说.

直接用C#,不让VB的语法干扰。全新的语言,除了基本的那些知识(比如算法和编程经验),别的都用不上。
#11
TonyDeng2015-05-15 14:00
VB关系

不能简单认为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的沿袭。



[ 本帖最后由 TonyDeng 于 2015-5-15 14:02 编辑 ]
#12
wube2015-05-15 14:04

要学并不是因为兴趣,而是未来工作上需要,我们有几支VB6开发的程式,数百万行,
计画要将它在上重写,因为无法在Win7或更高的系统中开启和编译VB6程式.
#13
TonyDeng2015-05-15 14:06
11楼是我专门为你摘出来的,好好晕菜吧。
#14
wube2015-05-15 17:44
那在64位的系统中32位和64位的程式写法差别是在哪?
#15
TonyDeng2015-05-15 17:48
以下是引用wube在2015-5-15 17:44:01的发言:

那在64位的系统中32位和64位的程式写法差别是在哪?

除了使用指针的地方,没有差别。.NET基本是不用指针的,用指针,编译器会出警告(除了混合C本地代码的C/C++编程之外),要求你自己承担风险。事实上,也没什么(或极少)非要用指针不可的场合。
1