Author Topic: eNotThatKindOfClass  (Read 3613 times)

0 Members and 1 Guest are viewing this topic.

daron

  • Guest
eNotThatKindOfClass
« on: January 16, 2004, 03:13:46 PM »
Here it is. I have 2004 loaded and running on my machine. Almost everyone else has 2002. The one that don't is on 14 still and doesn't matter. He's the boss man. Anyway, to the point. Any drawing I work in that is saved back to 2000 creates a thousand ± alert boxes every time one guy opens a drawing. To top that off certain commands like paste or insert give these alert boxes. I've checked his options against another machine that has no problems. I've tried to run a repair. Besides switching him to 2004, does anybody know what I can do to suppress these notifications and alert boxes.

Craig

  • Guest
Re: eNotThatKindOfClass
« Reply #1 on: January 16, 2004, 03:36:10 PM »
Quote from: Daron
Here it is. I have 2004 loaded and running on my machine. Almost everyone else has 2002. The one that don't is on 14 still and doesn't matter. He's the boss man. Anyway, to the point. Any drawing I work in that is saved back to 2000 creates a thousand ± alert boxes every time one guy opens a drawing. To top that off certain commands like paste or insert give these alert boxes. I've checked his options against another machine that has no problems. I've tried to run a repair. Besides switching him to 2004, does anybody know what I can do to suppress these notifications and alert boxes.

Yep, remove offending computer, add drafting table with parallel bar, really nice triangle, add mechanical pencil and really nice electric eraser. Problem corrected.  :lol:

Nah, I have no clue, I'm just using 2002 and can't compare since we don't have 2004....God Luck C1 of C3  :lol:

daron

  • Guest
eNotThatKindOfClass
« Reply #2 on: January 16, 2004, 03:53:30 PM »
Oh, I'm the top brass in the three, huh? Maybe just the most voiced. It's a close second with Keith. Chuck's having trouble staying under the boss' radar, so today and yesterday have been between Keith and I.

pochrist

  • Guest
eNotThatKindOfClass
« Reply #3 on: January 16, 2004, 09:13:40 PM »
This should help, it worked for me (took me weeks to find out how to fix the problem).
I worked in in office Last year that had about 40 work stations consisting of Acad R14, LT 2000, Arch Desktop 3.0 & 3.3 -  and me with Acad 2004. I had the same problem - But only with people running Arch desktop version all the others were fine. So here's what happens (if you know some of this then please just walk through it with me) When ever you open a Dwg in Arch Desktop (this also applies to Land develper and Mech desktop) - unlike Plain Acad, it will load "AEC Enablers" (aka "features" reserved to that version of Acad) to the dwg at start up. once the AEC Enablers are loaded and the dwg is saved they are then embeded in the dwg (you may notice that all to annoying "Proxy objects dialog box" warning while it can be suppressed it is a sign that there are enablers embedded in the dwg.

Acad 2004 will automatically update all the AEC enablers it finds in these dwgs. But whats happening in 2004 happens without your control and cannot be disabled. :(
There are default settings that in full versions of Acad that will set Autocad to (if you have an active internet connection) down load the AEC Enablers and update Acad. You can also down load a 2004 fix to update all the AEC enablers to 2004 version.

This is a NO NO, If you were to update the AEC Enablers in these dwgs then only you with 2004 or someone with ADT 2004, or what ever Acad verticle your using would be able to open it.  :shock:

So here is the other option I had, either everybody upgrade or try one of the following fixes:

1) If you Do Wblock and choose "Entire DWG" on any of the offending dwgs Acad will strip out the AEC Dictionaries (the stuff the Enables embed in the dwgs). And this will fix the problem. (But let me guess what you saying "I can't be bothered with doing that eveytime I work on a dwg") Bingo niether can I. So I did the next best thing.

this is option 2

2) I use a program called Super Purge (I've been useing it for years) and found out from talking to the guy that makes Smart purger that the AEC Dictionaries can be safetly removed and then those nasty errors will go away. - Acad's Purge utiltiy will not remove the AEC Dicts.

I don't know about Samrt purger, But Super Purge will allow me to make a "Start up" purge list (which in my case Purges AEC Dictionaries only).
So eveytime I opened up a DWG Super purge would scan the dwg and Automatcally remove the AEC Dictionaries. This is the only way I have found to fix the problem you mention I have to assume your co workers are using an Acad verticle not Plain Acad, because I work no with a guy now who uses plain Acad 2002 and I don't purge the Dwgs anymore and he hasn't complained yet. Good luck HTH

BTW I think Super purge costs about $15-$20.00


But be warned If your co workers use ADT's advanced feature (like setting schedules, Walls, etc) then removing AEC Dicts will screw up those things and turn them back into basic Acad objects (lines, text, etc).
In my Last firm my co-workers didn't  - they didn't even know how to.

Keith™

  • Villiage Idiot
  • Seagull
  • Posts: 16899
  • Superior Stupidity at its best
eNotThatKindOfClass
« Reply #4 on: January 16, 2004, 11:14:15 PM »
Quote from: pochrist

1) If you Do Wblock and choose "Entire DWG" on any of the offending dwgs Acad will strip out the AEC Dictionaries (the stuff the Enables embed in the dwgs). And this will fix the problem. (But let me guess what you saying "I can't be bothered with doing that eveytime I work on a dwg") Bingo niether can I. So I did the next best thing.


Well, let me tell you what I did....
I had a very similar situation, only it involved object handles. Eveytime an entity is added to a drawing, the handle number increases. Imagine a handle that has 15 digits...
Perhaps B2158D9E7A01C6F

Now lets see exactly HOW large of a number that is ....
802,019,901,565,836,399

That is ALOT of entites added to the drawing. Now I am not a rocket scientist, BUT I do know that the larger a number gets the more space it occupies in memory AND the drawing format only has so much space reserved for entity data lists.

Now multiply that number above by 12-15 thousand objects in a drawing.

I was locking up with drawings no larger than 200k, then I had a thought, what if I wblock the entire drawing? I had heard that it solves many problems with drawings by actually purging defective entities. So I tried it ... wow!! no more crashie ....

I thought it was only a fluke so I tested it. I created a new drawing and continually created and erased entities until the handles reach the above level, now, there are NO objects in the drawing, not one single block, only layer 0 and the standard text styles,  everything else was purged. Saved the drawing and reopened it....Went to work for a little bit in it .... crash ... I did an audit .. no errors ....recover ... no errors .... wblock the drawing (still no entities in the drawing) saved again...reopened and no crash ....
I still occasionally come across a drawing with handles like those, and I typically have problems with those drawings, so I made it a habit to wblock those drawings when I came across them.

Now I said all of that to bring you to my next point ...
I created a lisp routine to wblock the drawing to itself whenever I use save or qsave. thereby reducing the size of the drawing and purging all unused layers, styles, dictionaries, blocks, etc...

Create an "end command" VBA reactor for "save" and "qsave" have it run the lisp routine to do your wblocking, then it is automatic.


Lisp Code
Code: [Select]

(defun C:ENDIT ( / expert cmdecho)
 (setq expert (getvar "EXPERT")
         cmdecho (getvar "CMDECHO")
 )
 (setvar "EXPERT" 5)
 (setvar "CMDECHO" 0)
 (command "-wblock" (getvar "dwgname") "*")
 (setvar "EXPERT" expert)
 (setvar "CMDECHO" cmdecho)
 (princ)
)


VBA Code
Code: [Select]

Private Sub AcadDocument_EndSave(ByVal FileName As String)
 SendCommand "ENDIT" & vbCr
End Sub



Now how is that for being bothered ???

ps ... it also makes the AutoCAD purge command obsolete ... :)
Proud provider of opinion and arrogance since November 22, 2003 at 09:35:31 am
CadJockey Militia Field Marshal

Find me on https://parler.com @kblackie

pmvliet

  • Guest
eNotThatKindOfClass
« Reply #5 on: January 23, 2004, 03:37:00 PM »
keith,
I like that! I am not sure I would do it for all my files.
Does it handle model/paperspace?

Thanks,
pieter

Keith™

  • Villiage Idiot
  • Seagull
  • Posts: 16899
  • Superior Stupidity at its best
eNotThatKindOfClass
« Reply #6 on: January 23, 2004, 04:21:19 PM »
In all of my use of it with post R14, I have had absolutely no problem with it. I have not tested it on A2k4 and there was some issues with pre A2k, like it would drop the paperspace objects. But I have not had that problem in A2k.

I would test a couple of junk files first with both PS and MS active and then you will know for sure in your setting.
Proud provider of opinion and arrogance since November 22, 2003 at 09:35:31 am
CadJockey Militia Field Marshal

Find me on https://parler.com @kblackie

daron

  • Guest
eNotThatKindOfClass
« Reply #7 on: January 23, 2004, 04:28:57 PM »
Thanks all. I'll try it soon.

daron

  • Guest
eNotThatKindOfClass
« Reply #8 on: January 29, 2004, 12:56:52 PM »
Welllllllllll! That didn't work. Nice idea though.

daron

  • Guest
eNotThatKindOfClass
« Reply #9 on: January 30, 2004, 03:39:15 PM »
Okay, so today it does work. Digging deeper. Thanks Keith.

Keith™

  • Villiage Idiot
  • Seagull
  • Posts: 16899
  • Superior Stupidity at its best
eNotThatKindOfClass
« Reply #10 on: January 30, 2004, 04:03:03 PM »
:roll:
Proud provider of opinion and arrogance since November 22, 2003 at 09:35:31 am
CadJockey Militia Field Marshal

Find me on https://parler.com @kblackie

hudster

  • Gator
  • Posts: 2848
eNotThatKindOfClass
« Reply #11 on: March 18, 2004, 12:58:04 PM »
What am i doing wrong,

Quote
Lisp Code

code:
--------------------------------------------------------------------------------

(defun C:ENDIT ( / expert cmdecho)
 (setq expert (getvar "EXPERT")
         cmdecho (getvar "CMDECHO")
 )
 (setvar "EXPERT" 5)
 (setvar "CMDECHO" 0)
 (command "-wblock" (getvar "dwgname") "*")
 (setvar "EXPERT" expert)
 (setvar "CMDECHO" cmdecho)
 (princ)
)

--------------------------------------------------------------------------------

VBA Code

code:
--------------------------------------------------------------------------------

Private Sub AcadDocument_EndSave(ByVal FileName As String)
 SendCommand "ENDIT" & vbCr
End Sub

--------------------------------------------------------------------------------


I Save the lisp as endit.lsp, and the vba as endit2.dvb, but when I load them both and hit save it goes into an endless loop, if I hit escape the empty layers etc are still loaded.
Revit BDS 2017, 2016, 2015, 2014, AutoCAD 2017, 2016, Navisworks 2017, 2016, BIM360 Glue

Keith™

  • Villiage Idiot
  • Seagull
  • Posts: 16899
  • Superior Stupidity at its best
eNotThatKindOfClass
« Reply #12 on: March 18, 2004, 02:23:52 PM »
In some versions of VBA the vbCr is not required at the end of the SendCommand call. In this case, it might cause a loop condition, but I have never experienced that.

Of course they both must be loaded for it to work.
Now...as far as the layers being loaded, it only reflects in the saved drawing NOT the open drawing. In this manner, you can frequently save and it will always save a "purged" version, but the open version will always contain all of the information.
Try opening the saved drawing and check it for the layers, blocks, linetypes etc...
Proud provider of opinion and arrogance since November 22, 2003 at 09:35:31 am
CadJockey Militia Field Marshal

Find me on https://parler.com @kblackie