I can't open my saved drawings without bricscad crashing...HELP!!

 I keep getting this message when I try to open a file: Object of class AcDbAttribute can't be cast to AcDbViewport

Comments

  • You could try to open the drawing using the RECOVER command, which will try to heal it during loading.
  •  The same message comes up when I try to recover the file by typing RECOVER in.
  •  Another trick is to insert the problem drawing into an empty drawing.   But, only the model space objects are brought in.

    -Joe
  •  Thanks Joe! I tried that and realized that I only got the model space info...at least it's some.
  • Two other things to try:
    1. Use the _AUDIT command before saving.
    2. Wblock the entire dwg instead of saving. This will create a new file with both MS and PS entities.

    I also cannot open the file, but using some Lisp code I have notice that there are some ACE dictionaries in the file. They may be causing some of the issues.
  • ... The file I am referring to can be found here:
    https://forum.bricsys.com/discussion/30163#30166
  •  Roy,
    I purge and audit before saving and closing files. And this message still comes up and I can't get back into my file. Tell me more about ACEs? I'm very concerned using Bricscad in the future as this happens every time I open and modify a drawing file. I need to get to the root of the problem. Do I need to just make it a routine to Wblock every time I close a file...just seems like a hassle?
    Thanks!
  • You're saying this happens on every drawing...f you were to open a blank drawing, draw a couple lines, and save it, is the file corrupted?  I would expect it is a specific object that you're inserting/creating that is causing the issue. 
  •  Chris,
    No this probably wouldn't happen if I did that. But with work I use a lot of templates that I've set up previously and blocks. I've been using Bricscad for over 5 years and never had an issue til recently. I did just upgrade to a newer version a few months ago. I'm not doing anything different than I have in the past. Right now I downloaded the autocad trial version as I can't trust Bricscad to finish my deadline. I just don't know what to do to recover old files and if I work on new ones will the same issue keep happening.
  • Julie, from your last post it would seem that you do not have this issue with all files and that it has cropped up quite recently. I suspect it is related to a specific project and is perhaps caused by 'foreign' files. Note that the drawing also contains xrefs that may play a role.

    Regarding the AEC dictionaries:
    All dwgs contain dictionaries. These are used to store invisible application data. AEC dictionaries are created by some AutoCAD versions.

    My suggestion to _WBlock the entire drawing would only have to be done once. I think it will get rid of a lot of this AEC baggage/garbage.

    In general when working with 'foreign' files it is a good idea to insert the file in one of your own templates. This will ensure that all your settings, layers, (dim)styles etc. are in place and that you start with 'clean' dictionaries.

    To salvage a problem drawing you can try this procedure:
    1.
    Start a new dwg from a template.
    2.
    Insert the problem dwg in the new file.
    Make sure you use 0,0,0 as the insertion point and that the insertion angle is 0 degrees.
    3.
    Explode the block from step #2.
    4.
    Use the _Template option of the _LAYOUT command to import the layout(s) from the problem drawing.
    5.
    Purge multiple times.
    6.
    Save the new drawing.
    7.
    You have now restored the drawing. But note that the dimensions in paper space are no longer associative.

    If I use this procedure on your A601.dwg the file size reduces to about 10% of the original size. See the attached file.

    A601_import.dwg

  •  Thanks Roy for the info. I sometimes don't have the option of starting with a clean slate and have to use cad files that are given to me. Are you saying the drawings I get from others to create a WBlock of it first then put it into my own template to solve the problem for future use? The only thing that is a major issue is that I can't get all the info that I did on paper space which is the majority. It seems that only model space objects come through. IT doesn't seem like an easy fix to recover my files. Thanks for your help!
  • You have not yet tried the procedure I have outlined in my previous post. In step #4 the layouts from the original 'problem' drawing are imported. This means that the paper space entities are also imported. So with that procedure you can recover *all* visible data from the original file.

    If you start working with a foreign file and you want to retain the paper space layouts, including associative paper space dimensions, I would advise using the _WBlock command with the 'Entire drawing' option. You would then have a new clean file to work with. But this file will not conform to your own template.

    If you do not need the paper space layouts from the foreign file you should first purge that file and then start a new dwg from a template and insert the foreign file. Explode the block and finally purge only that block (you don't want to purge all elements from a dwg that was just created from a template).

    The procedure in my previous post provides a 3rd approach. You could use this as your standard approach. But, as already mentioned, existing dimensions in PS will no longer be associative.
  •  Roy! It worked! Thank you!!!
This discussion has been closed.