无法在visual basic 8上打开visual basic 6项目

时间:2017-04-09 05:32:34

标签: vb6 vb6-migration

我在VB6上创建了一个项目但是当我在VB8上打开它时,它显示以下错误:
error

如何解决?

3 个答案:

答案 0 :(得分:1)

正如GSerg在评论中列出的那样,这似乎是Microsoft知识库文章896292中记录的已知问题:You receive a "The remote procedure call failed" error message when you upgrade a Visual Basic 6.0 project to Visual Studio .NET 2003 or Visual Studio 2005 on Windows Server 2003 SP1 or on Windows XP SP2

要在此处重现解决方案:

  

原因

     

出现此现象的原因在于VBU.exe工具与数据执行保护(DEP)选项存在兼容性问题。

     

注意:使用Microsoft Visual Studio .NET IDE中的Visual Basic升级向导升级Visual Basic 6.0项目时,将启动VBU.exe工具。

     

解决方法

     

要解决此问题,请将VBU.exe工具添加到DEP排除列表中。为此,请按照下列步骤操作:

     
      
  1. 单击“开始”,单击“控制面板”,然后双击“系统”。将出现“系统属性”对话框。
  2.   
  3. 单击“高级”选项卡,然后单击“性能”下的“设置”。将出现“性能选项”对话框。
  4.   
  5. 单击“数据执行保护”选项卡。验证是否已选中除我选择的那些选项以外的所有程序和服务的开启DEP

         

    注意默认情况下,在Microsoft Windows Server 2003 Service Pack 1(SP1)中选择“为我选择的所有程序和服务启用DEP”选项。

  6.   
  7. 单击“添加”。找到并单击以选中VBU.exe。单击“打开”。
  8.   
  9. 在警告框中,单击“确定”。 VBU.exe现在出现在DEP程序区域中。
  10.   
  11. 单击“应用”,然后单击“确定”   好。将出现一个对话框,指出您必须重新启动计算机才能使设置生效。单击“确定”。
  12.   

答案 1 :(得分:0)

尝试将项目划分为小项目(或对项目的大部分内容进行评论),然后在每个小项目中再试一次。 我们的想法是找到生产错误的函数。

我的直觉告诉我可能是DLL或OCX问题。尝试查看所有外部DLL或OCX调用并从原始项目中删除,然后再次尝试升级。

答案 2 :(得分:0)

大多数将VB6项目迁移到.Net的开发人员甚至都没有尝试移植它们。即使使用第三方“转换”软件,这项工作也会非常繁琐。这么多,大多数开发人员只是完全重写应用程序。考虑一下转向另一种语言。事实上,一些开发人员利用这个机会将其移植到C#。我是一个顽固的VB6用户/粉丝,但是我试图移植我的200表格会计应用程序,我只是用C#重写它。我开始移植它,试过第三方转换应用程序,但是不值得。