I posted the following topic on the AUGI programming page. I'm pasting it here in case anyone can shed some light on a tough problem........
"We have a never ending problem with engineering consultants submitting files to us with proxy objects in them, usually from third party software they bought to do their calculations. We have tried everything to persuade them not to send us files with proxies, but nothing stops them. I have decided that a better approach might be to delete the objects on our end.
My first thought was to use a selection filter in VBA to select the proxy objects then delete them. The problem is finding the DXG group code to make the selection. I can't get the codes to work. The proxy notice that pops up on my test file indicates 170 objects. I am able to make a DXF file from this file, and "AcDbProxyObject" appears in the DXF file 170 times. Here's a sample of the DXF code:
0
ACAD_PROXY_OBJECT
5
813D7E
102
{ACAD_REACTORS
330
3859C9
102
}
330
3859C9
100
AcDbProxyObject
90
499
91
937
95
2555929
70
0
93
105
310
4A34D128929A894251896A5A9680
340
813D7F
94
0
I understand what most of this is, but I can't get a selection set that grabs the 170 proxies.Here's my VBA code:
Dim Sset As AcadSelectionSet
Dim Codes(0) As Integer
Dim CodeValues(0) As Variant
Dim Entity As AcadEntity
Codes(0) = 100
CodeValues(0) = "ProxyObject"
Set Sset = ThisDrawing.SelectionSets.Add("Proxy")
Sset.Select acSelectionSetAll, , , Codes, CodeValues
Debug.Print "Drawing has " & Sset.Count & " proxy entities"
Is this the right approach, or is there some other way to accomplish the task of eliminating proxies?"