问题标签 [vb6-migration]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
425 浏览

c# - VB6 转换为 C# 错误

现在我正在将一个 VB6 项目移植到 C# 并不断收到此错误。似乎无法在命名空间中修复它。

问题:

原始方法看起来像这样。

无法理解为什么它不起作用并感到沮丧。有什么建议么?

0 投票
2 回答
13534 浏览

vb6 - How to convert Application.PrevInstance in VB 6.0 to VB.NET?

I have 'Applications.PrevInstance' in VB 6 code that I am trying to upgrade to .NET using VS 2008. Apparently this code is no longer valid. Does anyone have any ideas about upgraded solution? TIA

0 投票
3 回答
176 浏览

asp.net - vb6 到 .NET 的转换。我被困住了

我有这个,我一直在摆弄它一段时间,但我完全被卡住了。任何人都可以帮助我对此有所了解。我正在尝试将其重写为.NET。谢谢。

0 投票
1 回答
566 浏览

vb.net - VB.NET 中的下拉菜单

我有一个小要求,那就是:

表单上有两个组合框,用于填充员工姓名和角色。我正在填充组合框,如下所示:

  1. 我创建了一个名为“DbConnect”的类,其中有 02 个函数:

    /li>
  2. 设计了一个带有两个组合框的表单,并将数据填充到其中:

    /li>

数据被正确填充到组合框中,我的要求是当我从第一个组合中选择和员工时,他的相应角色应该在第二个组合中被选中。

任何人,请帮我解决这个要求。

问候,
乔治

0 投票
0 回答
404 浏览

oracle - RDO 到 ADO.NET - Oracle 中的 rdoErrors

我正在将一些代码从 VB RDO(使用 ODBC 游标)转换为 ADO.NET

一些旧的 VB 代码循环通过 RDO 错误集合来获取任何 ODBC 或服务器错误并相应地记录它们。

我已经使用 Data.Common 对象(例如:DBCOnnection、DBCommand)并使用 Datasets 和 ODBC 转换了代码。(我没有使用 Oracle .NET Provider)

处理这种情况的最佳方法是什么?如何以这种方式获取服务器或 ODBC 错误。没有我可以使用的错误集合。我应该使用 Try/Catch 吗?有什么最佳实践吗?还是经验中的知识?

0 投票
3 回答
4347 浏览

.net - Err.Number(VB6 与 C#)

我使用 Artinsoft 的 VB6 到 .NET 向导将 VB6 应用程序转换为 C#,并且在之前使用 Err.Number 的任何地方都会收到升级警告;

//UPGRADE_WARNING: (2081) Err.Number 有一个新的行为。

转换后的代码是指;

我没有任何运气发现有什么区别。有谁知道它可能是什么,或者忽略这个警告是否安全?

更新

对于将来偶然发现这个问题的任何人 - 一个警告;在 C# .NET 应用程序中继续使用 Err.Number 是不安全的。该属性仍然可用,但是在出现错误后未按预期填充它。按预期填充的唯一情况是错误来自 COM 组件。

正常的错误,例如 DB 访问、IO 操作等,不会给 Err().Number 赋予任何价值,因此遗憾的是必须重构它的使用。

奇怪的是,在 VB .NET 中,它仍然可以按预期工作,因此在决定要转换的目标语言时,也许需要牢记这一点。

0 投票
3 回答
14741 浏览

c# - C# 等效于 VB6 的 GetObject

以下 VB6 代码连接到某些第三方软件并强制使用管理员用户名和密码登录:

我想在 C# 中做同样的任务,但作为一个非常绿色的 C# 开发人员(大约 3 个月的经验)我不知道如何做到这一点。我在 Google 上度过了非常令人沮丧的一天,但没有找到任何符合要求的内容(其中大部分我什至无法理解) 我对 VB6 的了解甚至比对 C# 的了解还要少,但 VB6 让它看起来如此简单。

此外,在我实施到我们的 QA 环境之前,我无法测试连接到这个第三方软件。所以我想用一个简单的应用程序来测试这个功能,例如记事本。我可以在记事本上调用什么功能/方法而不是“FixLogin”?

如果有人可以帮助我解决这个问题,我将不胜感激。

亲切的问候,史蒂夫。

0 投票
1 回答
477 浏览

c# - 用 C# 等效项替换由 CreateDispatch 调用调用的 VB6 DLL

现有的 Visual C++ 应用程序进行以下调用;

pMyClass 是一个显然由 ClassWizard 自动生成的类,它继承自 COleDispatchDriver。

它所引用的实际 DLL 是 VB6 的,它正在迁移到 C#,作为总体上远离 VB 的努力的一部分。

我的问题是……我需要做些什么来确保 C# 程序集的工作方式与原始 VB6 模块的工作方式相同吗?目前,C# 看起来像这样;

这足够了吗?在 MyClass 上设置公共字符串字段(代码中未显示)时,是否有任何需要注意的问题?

请注意,我不是此代码的原始作者 - 它来自遗留系统,我只是在进行迁移。

0 投票
1 回答
5547 浏览

.net - 将 VB6 自定义类型(具有固定长度字符串)转换为 VB .NET

我已经使用 UpgradeWizard 将一些在自定义类型中使用固定长度字符串的 VB6 代码升级到 VB .NET,并且在使用 LSet 方法时遇到了问题,我希望有人能帮助我。

现有的 VB6 代码(类型声明);

示例用法;

将其升级到 .NET 的合适方法是什么?

使用 UpgradeWizard,我得到以下信息;

FixedLengthString 来自命名空间 Microsoft.VisualBasic.Compatibility.VB6。

升级向导失败的地方是 LSet。它产生了以下内容;

哪个无法编译,给出这些错误;

'String' 类型的值无法转换为 'Microsoft.VisualBasic.Compatibility.VB6.FixedLengthString'

未为“公共函数 LSet(源为字符串,长度为整数)为字符串”的参数“长度”指定参数

'MyTypeBuffer' 类型的值不能转换为 'String'

所以,我可以使用 ToString() 来获得其中的一部分,但仍然存在 LSet 方法调用本身的问题。我应该怎么做才能重新创建原始功能?升级向导是否给了我一个完全不合适的转换,或者它是否可以挽救成可用的东西?

0 投票
3 回答
1380 浏览

.net - 如何以编程方式将 vb6 转换为 vb.net

Visual Studio 附带将 vb6 代码转换为 vb.net 的向导。有没有办法通过代码调用这种转换?