以下用VBA为程序描述语言,如果你使用其它开发模式,应该也可以参考。(若还有什么困难,可以到明经相应的栏目提问)。
因为不知道你存放图形的目录树的深度和广度,以下用函数递归的方法实现目录及其子目录的遍历。
Private Sub DwgIterator(FolderSpec) 'FolderSpec是你图形存盘的根目录
Dim FileSys,Fs,F,Fi,SubFold
Set FileSys = CreateObject("Scripting.FileSystemObject")
Set Fs = FileSys.GetFolder(FolderSpec)
Set F=FileSys.Files
For Each Fi In F '扫描FolderSpec目录的文件
If Fi.Type="AutoCAD Drawing" Then '若文件是ACAD图形文件
'在这添加代码,插入Xref对象
End If
Next
Set SubFold = FileSys.SubFolders
For Each Fi In SubFold '扫描FolderSpec目录的子目录
DwgIterator Fi.Path '递归调用
Next
End Sub