What is a corrupted file?
A corrupted file is a file that unexpectedly becomes unusable. A file consists of many file streams that store different kinds of information. In the context of SOLIDWORKS, a corrupted file is a file in which one or more file streams become damaged enough to render the data (as a whole) unreadable. Damage to a file stream becomes apparent when you try to open or save a file.
What causes file corruption?
In most cases, it’s not possible to pinpoint the exact reason for file corruption. However, there are some common causes to consider. Some common causes of file corruption are:
Out of this list, the most common cause of file corruption is a network failure. Direct editing to a file stored in a remote location (network server, cloud storage, etc.) is not fully supported by SOLIDWORKS. There will be more on this in a later section.
What are the indicators that a file has been corrupted?
Depending on the version in use, a user may be presented with options for recovering the data. However, in most cases, a user will see an error advising them to contact Technical Support. Below is a list of error messages commonly associated with corrupt files (including when they appear).
Can I prevent file corruption?
Although file corruption is rare, it can and does happen in the scenarios listed at the beginning of this document (See the section entitled – What are the common causes of file corruption?). But how can I prevent this from happening? Below is a list of ways to reduce, if not eliminate file corruption.
- REDUCE POWER FLUCTUATIONS – As mentioned earlier, a common cause of file corruption can be caused by power fluctuations, which can affect the computer equipment. A good UPS (Uninterruptible Power Supply) can help prevent more than just file damage; it can prevent damaged hardware such as disk drives, video cards, etc.
- HESITATE ON KILLING AN APPLICATION – Have patience. Many users tend to kill an application or force to reboot a computer that seems to take too long to accomplish a task. The message “SOLIDWORKS is not responding” doesn’t always mean it is time to pull the plug. Most of the time, simply waiting for the software to do its thing will pay off.
- MAINTAIN HARDWARE – Hardware problems, such as a failing disk controller or faulty memory, can also be culprits of file corruption. Adding a UPS, user training, and periodic system maintenance/testing will certainly minimize problems. Frequent backups with a reliable backup/restore tool are the best protection.
- WORK FROM THE LOCAL HARD DRIVE – As mentioned earlier, network failures are the most common cause of corrupt files, especially if users open and save SOLIDWORKS files across the network. It is always best practice to copy files to the local hard drive before editing and saving. The use of PDM employs the functionality to cache files to a local vault view, where users can work on files before checking them back into the server vault.
- MAINTAIN YOUR NETWORK – If a user must access files over a network, it is advised to consult a networking specialist if problems persist. SOLIDWORKS Technical Support can offer only limited advice on networking as there are many variables in the establishment and operation of a network. SOLIDWORKS uses the same access routines for opening, closing, and saving files whether they are opened from a network or local hard disk. Networking issues are controlled by the Microsoft operating system interacting with the various third-party drivers through the system. Network card drivers on the servers and clients should be reviewed for the latest manufacturer version.
- USE BEST PRACTICES WHEN INSTALLING SOLIDWORKS SOFTWARE – It is not uncommon for users to have multiple versions of SOLIDWORKS on their machines. Use the Parallel Installation method to avoid registry conflicts between versions.
How do I troubleshoot file corruption?
If faced with one of the messages that are commonly associated with file corruption, there are a few things a user can do to determine what their next step should be in fixing the problem. Below is a list sorted by drawings, assemblies, and part files. If the user is unsure what the error message is advising please revisit the section entitled – What are the indicators a file has been corrupted.
CORRUPT DRAWING TROUBLESHOOTING
- Most of the time a drawing will become corrupt because one of the reference files are corrupt. To determine whether or not the drawing itself is corrupted, temporarily remove the referenced files from the dataset, then try to open the drawing. If the drawing opens with empty views one of the referenced files is likely corrupt. Close the drawing without saving, and see the next bullet point. If the drawing still cannot be opened, then it is corrupt and may need to be recreated.
- Next, if the drawing is referencing a top-level assembly, open the assembly to see if the same error message pops up. If so, proceed to section entitled CORRUPT ASSEMBLY TROUBLESHOOTING.
- If the drawing is referencing several individual parts, users can narrow down which reference file may be causing the issue by loading one sheet at a time. To do this go to File, Open, and browse for the drawing file. Highlight the drawing file and chose to load the drawing in Quick view mode.
- Once the corrupted reference file has been found, it can be replaced with a repaired, or remodeled file. Restore the data set with the new reference file and attempt to open the drawing.
CORRUPT ASSEMBLY TROUBLESHOOTING
- Troubleshooting an assembly can be done in a similar fashion. Determine whether or not the assembly itself is corrupted by removing the reference files from the dataset. However, since suppressing each component is the same as not loading it, here is a good tip on how to open an assembly with all the files suppressed.
The Configure Document dialog will pup-up. Chose to create a New configuration showing assembly structure only. Give the configuration a name and click OK.
NOTE: Unsuppressing groups of parts at a time will speed up the process and still allow for narrowing down the problematic reference file(s). If the corrupted file is a subassembly, then repeat this process for the subassembly.
- Just like troubleshooting the drawing, replacing the corrupted file in the dataset with a remodeled version should allow the assembly to be opened without errors.
CORRUPT PART TROUBLESHOOTING
- Lastly, troubleshooting a corrupted part (reference) file is not so easy. If a corrupted part file is being opened straight from a network storage, try to copy and paste the file from the server to the local drive and then open it. Sometimes the file can be opened from the local drive if the user is just experiencing poor network performance.
- If the file cannot be opened after copying it to the local drive, then (most likely) the file has become corrupted. At this point, users should contact their VAR (Value Added Reseller) Technical Support, who can give them advice on how to proceed.
Can a corrupt file be repaired?
SOLIDWORKS 2017 (and later) has functionality that can attempt a repair if the software determines there is enough data. This attempt will not produce a full feature tree with editable features. The software will attempt to recover the geometry much like it does when importing a universal file type such as a STEP, PARASOLID, or IGES file.
In rare cases, SOLIDWORKS Tech Support can repair a corrupted file, however there are a couple of things to consider. One is that a Service Request will have to be submitted to SOLIDWORKS on the user's behalf by their VAR. The VAR will help in determining whether or not the file is a candidate for an attempted repair. The other thing to consider is that it can take up to 3 days before SOLIDWORKS can process the request; even then SOLIDWORKS still might not be able to repair the file. With these things in mind a user may determine that it would be more expedient to start over and remodel the corrupted file or find an older working version that can be updated.
I hope this has helped in understanding how SOLIDWORKS files get corrupted and what can be done about it. Thank you for visiting the GoEngineer blog.