将VB6程序转换到VB.NET后, Dim reg As Object : reg = CreateObject("Wscript.Shell"),然后在reg.后出现的提示框中并没有RegWrite函数,虽然转换也提示“'UPGRADE_WARNING: 未能解析对象 reg.RegWrite 的默认属性”,但VB.NET程序却能正确执行这个函数成功写注册表,这是怎么回事。

解决方案 »

  1.   

    你这里采用的是晚期(后期)绑定,IDE不知道你这个变量到底是什么类型,当然无法提供智能提示了。
    你这个变量定义为Object类型,你说Object能提示出Wscript.Shell里面的方法、属性吗
      

  2.   

    .Net中操作注册表用RegisterKey类
    vb->vb.Net的转换不是Copy就算数的
      

  3.   

    使用前期绑定,先添加Wscript.Shell引用
    然后
    Dim reg As Object
    改成
    Dim reg As New Wscript.....
      

  4.   


    先生:
    VB6中和vb.net中都找不到“Wscript.Shell”项以及对应的组件文件啊,怎么办?
      

  5.   

    Windows Script Host Object Model
    对应文件在 %windows%\system32\wshom.ocx
      

  6.   

    问题解决:
    Dim reg As New IWshRuntimeLibrary.WshShell
    还是要谢谢的