标签: vb6-migration

将VB6模块转换为VB.NET

我几乎完成了将模块从VB6转换为VB.NET,但是我遇到了以下2个引号的问题,我想知道是否有任何方法可以解决这个问题:

Structure AUDINPUTARRAY
    bytes(5000) As Byte
End Structure
Run Code Online (Sandbox Code Playgroud)

我正在尝试将该字节行更改为:Dim bytes(5000)as Byte,但它不允许我在结构中定义大小.


这是第二个:

Private i As Integer, j As Integer, msg As String * 200, hWaveIn As integer
Run Code Online (Sandbox Code Playgroud)

我不知道如何转换:msg As String*200

vb.net vb6 vb6-migration

5
推荐指数
1
解决办法
1325
查看次数

将大型VB6应用程序升级到.NET.关于VB Migration Partner的观点

我有一个非常大的VB6代码库,有大量的第三方控件.想将其移至.NET.重写它是不可能的 - 客户认为没花钱去做同样的事情.使用内置升级向导迁移到.NET基本上是不起作用的.

有没有人从http://www.vbmigration.com/尝试过VB迁移合作伙伴. 如果是这样,有什么样的体验?

.net migration vb6 vb6-migration

4
推荐指数
1
解决办法
3490
查看次数

从VB6迁移到.NET,是否存在TreeNode.FirstSibling的等效功能?

我正在迁移的桌面应用程序大量使用了树视图控件,并且许多调用TreeNode.FirstSibling例如

'UPGRADE_ISSUE: MSComctlLib.Node property tvTreeView.SelectedItem.FirstSibling was not upgraded.
If tvTreeView.SelectedNode.FirstSibling.Index = 1 Then
...
End If
Run Code Online (Sandbox Code Playgroud)

是否有相同的功能使用?

vb.net vb6 treeview vb6-migration

4
推荐指数
1
解决办法
1500
查看次数

VB6迁移建议

我知道有很多关于VB6迁移的问题,但我不相信我的确切情况已在其中得到解答.

基本上,我们公司希望迁移我们的任务关键型VB6业务线应用程序,这个应用程序非常庞大,使用自定义库与其他内部程序进行通信,而一些dll则无法访问源代码.这个遗留应用程序没有任何类似的"最佳实践".事实上,几乎所有变量都是全局变量,大多数代码(如打印等)都只是复制/粘贴到需要的地方.好吧,复制,粘贴和更改只是一点点......

如果我们应该尝试迁移,VB.NET和C#.NET之间的决定取决于我们,他们希望我们能够满足将应用程序转换为基于Web的格式的可能性.管理层不会在外部移民公司上花钱.

另一个选项来自我们的基础架构团队,该团队一直在考虑使用虚拟化来保留Visual Basic 6.0客户端 - 服务器应用程序

我们的老板希望我们提供高水平的估算和建议,但告诉我们高管们希望在2010年4月之前完成.

是的,我们嘲笑那个.

我的问题是:

有没有人有任何与虚拟化路径分享的经验,因为从开发团队的角度来看,这是一个更好的选择?它对你有用吗?有没有你会警告的pitfulls?

尽管之前的系统分析师已经给出了1 - 2年的估计,但管理层不断推出2-4个月的时间框架.任何说服他们这样做的建议都是疯了吗?

有没有人成功迁移大型VB6应用程序到网络应用程序?之前的VB6迁移问题之一有一个答案,即将部分转换为支持.NET的COM库,以掏空VB6应用程序.可以使用这种方法吗?有没有人在这里成功尝试过?

.net virtualization vb6-migration

4
推荐指数
1
解决办法
394
查看次数

将CDate(长)从VB6移植到C#

我的任务是将旧的VB6程序转换为C#.我无法移植的一个功能是从二进制文件中读取的字段计算出生日期:

.BirthDate = CDate((CLng(recPatient.birthDateByte2) * 256) +
                         (recPatient.birthDateByte1 + 366))
Run Code Online (Sandbox Code Playgroud)

我能找到的唯一一个远程类似的功能是:

DateTime BirthDate = DateTime.ToDateTime((long)recPatient.birthDateByte2) * 256) 
                                       + (recPatient.birthDateByte1 + 366));
Run Code Online (Sandbox Code Playgroud)

然而,ToDateTime(long)只是返回一个InvalidCastException.

现在我可以手动构建字符串,但我无法在VB6上的任何地方找到任何文档CDate(long).

我究竟做错了什么?

c# vb6 vb6-migration

4
推荐指数
1
解决办法
1812
查看次数

VB6 格式函数:.NET 中的模拟

有一个String.Format函数在文档中被称为FormatVB6 函数的模拟。还有Format来自VisualBasic命名空间的函数是为了兼容性而提供的,并且基本上具有与String.Format.

事实上,这两种格式的日期和数字。

但是 VB6 的函数也能够格式化字符串:

? format$("hi there", ">")
HI THERE
? format$("hI tHeRe", "<")
hi there
? format$("hi there", ">!@@@... not @@@@@")
HI ... not THERE
Run Code Online (Sandbox Code Playgroud)

String.Format就我而言,无法做到这一点,新的Format. 我在兼容性Format文档中也找不到任何提及VB6 功能的某些部分丢失的内容,似乎该功能已被“悄悄地”弃用。

框架中有什么东西可以进行这种类型的格式化吗?

.net vb.net string-formatting vb6-migration

4
推荐指数
1
解决办法
7874
查看次数

迁移VB6应用程序

VB6应用程序与.NET平台的结合几乎就像重写一样,无论是VB.NET还是C#.与.NET平台相比,您是否认为在Java平台上进行此操作需要更多的努力,因为它无论如何都是重写?请分享你的想法!

c# java vb.net vb6 vb6-migration

4
推荐指数
1
解决办法
1258
查看次数

可以使用VB6编写的Outlook 2003 COM加载项与Outlook 2010一起使用吗?

我继承了使用VB6编写的Outlook 2003 COM加载项(注意:NOT VB.NET).

我需要升级它以使用Outlook 2010.是否可以使用VB6为Outlook 2010创建加载项,或者我是否需要重新实现所有内容?

vb6 outlook vb6-migration outlook-addin outlook-2010

4
推荐指数
1
解决办法
576
查看次数

Microsoft.VisualBasic.Compatibility 中 DirListBox 和/或 FileListBox 的替换

我有一个已迁移到 VB.net 的 VB6 应用程序,并且正在尝试将框架版本升级到 4.5 - 它抱怨 Microsoft.VisualBasic.Compatibility dll 中的所有内容都已过时。我能够相当轻松地替换除 FileListBox 和 DirListBox 之外的所有内容 - 虽然很乏味,但我不必创建任何新控件。

这些控件有相近的替代品吗?有谁知道它们是否已与框架的其余部分一起开源?

.net vb6-migration .net-4.5

4
推荐指数
1
解决办法
9800
查看次数

如何从 vb.net 中的二进制文件中读取 vb6 固定长度字符串

语境

我有一个使用这种特殊类型vb6软件:

Type Example
    A As Integer
    B As Single
    C As String * 10
    D  As Byte
    E As String
End Type
Run Code Online (Sandbox Code Playgroud)

这个结构完全保存在一个带有简单“ put ”的二进制文件中:

Dim Numfile%
Numfile = FreeFile
[...]
Put #Numfile, , example_instance
[...]
Run Code Online (Sandbox Code Playgroud)

问题

现在我想从vb.net (.NET Framework 4)读取这个二进制文件。问题是在 .net 中我们没有固定的字符串......我试图写一些类似的东西:

Structure Example
     Dim A As Short
     Dim B As Single 
     Dim C() As Char ' ---> This should replace String * 10.
     Dim D As Byte 
     Dim E As String 
End …
Run Code Online (Sandbox Code Playgroud)

vb.net vb6 vb6-migration

4
推荐指数
1
解决办法
122
查看次数