助人为快乐之本!

  博客园 :: 首页 :: 联系 :: 订阅 订阅 :: 管理
  23 Posts :: 0 Stories :: 280 Comments :: 4 Trackbacks

公告

今天看到一个问题:“在VB中调用,如何在VB中调试VB.net 开发的DLL呢?”

http://forums.microsoft.com/china/ShowPost.aspx?PostID=4115159&SiteID=15&mode=1

他的想法就是能够在调试的时候进入到DLL的内部。

下面我就来讲解如何实现的

1。用VB.NET创建类库

<Runtime.InteropServices.Guid("A3DD9964-E08F-4956-94D7-8DD69A7765DD")> _
    
Public Interface iTest
    
Sub TestMethod()
End Interface

<Runtime.InteropServices.Guid("A3DD9964-E08F-4956-94D7-8DD69A7765DE")> _
    
Public Class Test
    
Implements iTest

    
Public Sub TestMethod() Implements iTest.TestMethod
        
MsgBox("Hello World!")
    
End Sub

End Class

编译,记得在项目属性的“编译”选项卡里选中“为 COM Interop 注册”复选框

2。用VB6创建测试工程

引用上面编译好的DLL,编写代码

Dim cls As ClassLibrary1.iTest
Set cls = New ClassLibrary1.Test
cls.TestMethod

保存成project1.vbp并退出

3。设置调式信息

打开类库项目属性的“调试”选项卡,设置“启动操作”为“启动外部程序”,指定为VB6.EXE的位置。

设置“启动选项”中“命令行参数”为Project1.vbp, “工作目录”为Project1.vbp所在目录。如图

4。调试DLL

万事俱备。现在我们在MsgBox("Hello World!")打上断点,运行类库。你会发现VB6自动打开了,并且加载了project1.vbp.

执行VB6代码,哈哈,程序已经停在断点处,开始调试吧!

 

 

 

posted on 2008-11-12 13:34 feiyun0112 阅读(465) 评论(1) 编辑 收藏