明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3020|回复: 5

[求助]vb程序问题导致Autocad致命错误的解决方法

[复制链接]
发表于 2007-9-1 22:50:00 | 显示全部楼层 |阅读模式

各位朋友,本人采用cangcang朋友提供的将AutoCAD界面嵌入到VB窗口的方法,代码如下。其他操作与CAD不嵌入VB相同,但VB程序出现错误或异常时,都会引起AutoCAD致命错误,而对于不采用嵌入VB界面的方式,就不会引起AUTOCAD错误。请高手解释一下原因,当采用嵌入方式的时候,怎样解决,才不至于由于VB出现异常导致CAD致命错误,多谢!!

 楼主| 发表于 2007-9-1 22:53:00 | 显示全部楼层
本帖最后由 作者 于 2007-9-1 23:04:02 编辑

cangcang朋友提供的将Autocad界面嵌入到VB窗口的代码
[CODE][/CODE]
Public Sub AutoCAD_Appliaction(pic As VB.PictureBox, AcadApp As AcadApplication, AcadDoc As AcadDocument) '调用AUTOCAD在VB图形窗口中
    On Error Resume Next
    Dim i As Integer
    Set AcadApp = GetObject(, "AutoCAD.Application.16")
    If Err Then
        Err.Clear
        Set AcadApp = CreateObject("AutoCAD.Application.16")
        If Err Then
            pic.Visible = False
            MsgBox Err.Description
            pic.Visible = True
            Exit Sub
        End If
    Else
        If AcadApp.Documents.Count > 1 Then
            For i = AcadApp.Documents.Count To 1 Step -1
                Set AcadDoc = AcadApp.Documents.Item(i - 1)
                AcadDoc.Save
                AcadDoc.Close
            Next
        End If
    End If
    Set AcadDoc = Nothing
   
    Dim z As AcadMenuGroup
    Dim j As AcadToolbar
   
    For Each z In AcadApp.MenuGroups
        For Each j In z.Toolbars
        j.Delete
        Next j
    Next z
   
    lHwnd = GetParent(GetParent(AcadApp.ActiveDocument.hwnd))
    If lHwnd = 0 Then Exit Sub
    SetParent lHwnd, pic.hwnd
    SetWindowText lHwnd, "图形显示"
    AcadApp.Visible = True
    AcadApp.WindowState = acMax   
   
End Sub
 楼主| 发表于 2007-9-3 20:07:00 | 显示全部楼层

在VB出现异常的时候,能否通过On  error goto的方式,处理AutoCAD不让他产生错误?

还是由于VB出现异常,导致Autocad父句柄出错,而引起的错误?

本人对此问题考虑了很久,还没有分析出原因,希望大家给予帮助,多谢了!!!

 楼主| 发表于 2007-9-8 11:06:00 | 显示全部楼层
没有朋友遇到这样的问题吗?
 楼主| 发表于 2007-9-13 13:36:00 | 显示全部楼层

希望大家发表一下意见

 楼主| 发表于 2007-9-20 11:21:00 | 显示全部楼层
顶一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 12:13 , Processed in 0.152279 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表