【发布时间】:2012-01-23 12:50:38
【问题描述】:
我提供了一个用 VB5 编写的 VisualBasic 软件。现在整个东西应该在Windows 7下运行,所以需要转换为VB8或VB9。看来VB的大部分API在这些年都发生了很大的变化,所以对我来说,仅仅运行几个代码升级就一切都很好……
最大的问题是表单。这个软件中有很多Forms,它们在.frm文件中声明并且总是这样开始:
VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.1#0"; "COMDLG32.OCX"
Object = "{6B7E6392-850A-101B-AFC0-4210102A8DA7}#1.2#0"; "COMCTL32.OCX"
Begin VB.MDIForm frmMain
BackColor = &H00C0FFFF&
Caption = "voice"
ClientHeight = 6990
ClientLeft = 165
ClientTop = 735
ClientWidth = 6990
LinkTopic = "MDIForm1"
StartUpPosition = 3 'Windows-Standard
在我看来,这个 Stuff 是用 UI-Layouter 生成的,所以里面没有自己编写的代码。
是否可以在 VB8/9 中运行此代码,甚至重写它以使 VB8/9 能够理解它?我目前很悲观,认为整个软件都需要重写……
【问题讨论】:
-
fyi - 从 vb8、vb9(甚至现在的 vb10)的角度考虑最近的 vb 版本并不是一个好主意。在 vb6 for .Net 之后,该语言进行了彻底改革,在某些方面与过去相比,他们采用了非常不同的方向。现在最好将其视为“vb.net”,一种不同于 vb6 及之前的完整新语言。这些语言中的旧习语通常根本无法很好地翻译到 vb.net。简而言之,您正在寻找一个完整的重写(正如您已经承认的那样;)