明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2020|回复: 0

[求助]关于doucument关闭的问题

[复制链接]
发表于 2005-7-1 17:48:00 | 显示全部楼层 |阅读模式
今天机会崩溃!问题是这样的,我每次打开CAD后自动运行如下的一个宏:
Sub LoadFileYJ()
strPath = Application.Path
If Right(strPath, 1) <> "\" Then
strPath = strPath & "\"
End If
'MsgBox strPath
Dim a As New CommonDialog
a.Filter = "(*.dwg)|*.dwg"
a.CancelError = True
a.ShowOpen
Dim strFileName As String
Dim strDBDirName As String
Dim strDBFileName As String
Dim strSourseFileName As String
strSourseFileName = strPath & "MZY2002\gangjin.mdb"
strFileName = a.FileName
'MsgBox strFileName
ThisDrawing.Application.Documents.Open strFileName
strDBDirName = HJWCFFile.GetFullPathPart(strFileName, VBFPFileDir)
strDBFileName = strDBDirName & HJWCFFile.GetFullPathPart(strFileName, VBFPFileTitle) & ".mdb"
'MsgBox strDBFileName
If Dir(strDBFileName, vbDirectory) = "" Then
If MsgBox("文件不存在,是创建文件,否重新指定文件", vbYesNo) = vbYes Then
FileCopy strSourseFileName, strDBFileName
strDBPath = strDBFileName
Else
Dim b As New CommonDialog
b.Filter = "(*.mdb)|*.mdb"
b.ShowOpen
strDBPath = b.FileName
End If
Else
strDBPath = strDBFileName
End If

End Sub 这样,每次打开CAD后会自动弹出对话框,让用户选择一个已经存在的.dwg文件,同时检测是否有同名的.mdb文件,如果没有就提示用户是创建一个同名的.mdb文件还重新选择一个.mdb文件,目的是保证有一个.mdb文件,并将文件的完整路径记录下来。
现在的问题是这样,每次都会有用户选择的一个.dwg文档和一个CAD每次自身的一个Drawing1.dwg文档存在CAD中,用户选择的一个.dwg文档为当前文档,如果用户什么都不作直接关掉CAD,竟然会出现“CAD无法关闭Drawing1.dwg,因为还有一个命令在运行。请完成该命令,然后重试。”这是为什么???再切换到Drawing1.dwg文档,发现并没有什么命令在运行,而且可以直接关掉! 下面我就想用程序将它关掉,我在ThisDrawing.Application.Documents.Open strFileName
后面添加了
Dim DOC As AcadDocument
Set DOC = ThisDrawing.Application.Documents.Item("Drawing1.dwg")
DOC.close
发现每次运行到DOC.close
这边就过不去,查阅帮助,发现帮助上也是这样用的,我在想是不是没有设置为当前文档,我又在 DOC.Close前面添加了一句:
DOC.Activate,可是仍然不行。我觉得还是那个说有个命令在运行的原因,但是就是不知道怎么解决,快崩溃了!请各位帮忙谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-27 12:36 , Processed in 0.166552 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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