我知道这个问题可能和其他人类似,但实际上我正在寻找VB6开发人员应该切换到C#的原因.
我的公司最近批准了用C#编写的项目,所以我们有很多VB.Net程序员,但是,我们有一些遗留的应用程序开发人员也在VB6中.我们有时间框架将这些应用程序重新编写为.Net网络应用程序.所以无论他们将要学习什么新东西.
今天的开发人员之一特别问"我们为什么要切换到C#?"
我回答说社区在很大程度上已经决定使用C#来实现C#中大约80%的示例.我是一名VB.Net程序员,我很高兴终于开始研究C#,但是,由于我是如此新,我不确定我能回答"为什么?" 题.我的理由更多是因为我想学习它.
因此,如果没有任何资源可以发送给这些开发人员来平息他们的神经,那么我不会感到很好奇.
期待您的投入!
我正在进行一个迁移项目,其中数据库实际上以缇为单位存储显示大小.由于我不能使用twips为WPF或Winforms控件分配大小,我想知道.NET是否有在运行时可用的转换方法?
我知道已经有关于VB6迁移的问题,但是我的项目的代码库带来了一些新的问题.
我不得不说代码质量,结构和架构只是一场噩梦.有两个大项目:Nr.1有40个表格,40个模块和一些类文件,这个EXE是一种"基础系统".Nr.2有80个表格,20个模块和几个类文件,这个EXE调用函数形成"基本系统".然后还有大约10个带GUI的项目(每个1-3个表单)和另外90个非GUI项目,其中大多数是EXE文件,一些是DLL.DLL用C,C++和VB6编写.
该守则自10年以来逐渐发展,并且一次由1个(坏)开发人员编写.
几个月前我接手了这个项目,我是唯一的维护者.变更请求和错误的流量不断(但很低),我们从客户处获得维护预算,以保持软件运行并在法律要求方面"更新".
我的选择
1)从头开始重写 - 在这种情况下,我可以用Java编写它以实现可移植性.这里的问题是,除了一些(旧)用户帮助,没有文档,所以丑陋的代码是"文档".有一个人具有高级别知道该软件应该如何做.此外,很难说服管理层这样做,即使长期存在巨大的成本节约,也存在政治问题.我也不能一次做那个(vb)项目,因为数据库结构并不比代码好,即必须从头开始.所以我只能一次更改整个软件.
2)将代码迁移到VB.NET/C#主要项目的迁移首先,我测试了已经从Project Nr.1获得~2000升级注释,其中大部分内容如Screen.MousePointer更改,函数具有变量返回值和等等.我的想法是在转换之后,创建用于数据库抽象的类,更改代码以使用这些类,并进行重构,迁移和更改其他项目,当所有代码使用数据库类时,更改数据库结构.
3)每当我必须在那里改变一些东西时重构VB6中的代码(我已经部分地做了这个)并且在某些时候重构了其余部分.这样就可以更容易地看到原始功能,因为它是原始代码,当出现错误时,很明显它们不能成为迁移的结果.当代码被重构时(我假设它也会小50-75%),将它迁移到.NET更容易.然后改变DB结构(然后进行另一轮重构......).
将来会有一些更大的变化(使它与Win7兼容,以及影响代码大部分的另一个大CR),因此我将不得不通过这些变更进行这些更改.无论如何,很多代码.
我的问题是谁有移植糟糕,丑陋代码的经验/提示?你会建议哪些选择?
我正在检查VB6代码自动转换为C#并转换someArray(3)为转换器someArray[3].但是相应于旧的代码文档,它应该选择第三个元素而不是第四个元素,就像在翻译版本中那样.
数组索引是否在VB6中基于0?或者他们从1开始?
是否有人使用Visual Studio 2010将VB6项目迁移到.Net?
我已经在VS2005中测试了迁移,但是由此产生的.Net代码被搞砸了,我们决定不迁移到.Net.那么在VS2005或VS2008中VS2010迁移向导是否已经改进了向导?
我们的客户使用我们软件的vb6版本.
我们正在将它们升级到用C#编写的.NET应用程序......
使用.net 2.0比使用.net 3.5的批量少吗?
我对体积较小的定义是:尺寸更小,安装时间更短等.
无论如何,他们中的大多数可能已经拥有2.0.
我只是问,因为我想利用3.5中的LINQ.
有没有人使用以下任何一种(或任何其他工具)将您的vb6代码转换为.net语言?
Artinsoft的升级伴侣 (转换为c#和vb.net)
vbmigration合作伙伴 (转换为vb.net)
它们的效果和转换的大小项目有多大?
之后剩下多少工作要做?你对自己的.net项目感到高兴.支持是什么样的?对于像这样的工具的用户,是否有任何支持论坛,供应商似乎都没有提供.
他们收取了什么,他们的价格没有公布,我听到上述两个例子的不同来源的价格差别很大
这里的一些程序员已经在VB6中开发了一个项目,并且他们说如果他们希望他们的应用程序在更新/未来的系统上运行,他们现在需要升级到vb.net,因为vb6将很快成为历史.
所以他们一直在努力的这个巨大的应用程序,他们将不得不从头开始重建(他们试图使用升级向导,但有太多的错误)
该公司的老板对于在项目中投入这么多个小时而不是太激动,只是为了转身并从头开始重做.
这不是我的项目,我对vb一无所知,我是一名网络程序员.
但是这些家伙可以做些什么呢?这样就不会再发生了,或者他们应该怎么做才能让现在这不是问题呢?
有没有办法确保您的应用程序始终可扩展,不会过时,需要重新编写?
谢谢!