VSS 2005 Corrupts Illustrator Files
I'm a technical writer and illustrator. I use Frame 7.1, Illustrator CS2, Robohelp, Photoshop CS2 and some other apps. I recently updated VSS from 6.0 to 2005, which I use for archiving. I have a new project that I created in VSS after the upgrade. When I check out some (but not all) Illustrator files from that project, and attempt to open the file, I see an Illustrator message "Can't open the illustration. The illustration exceeds an implementation limit." When I click OK on the message box, a blank artboard opens. The file previews before opening. Also, the file can be opened (read only) if I have never attempted to check it out of VSS 2005, and I can successfully Save As a different file name.
Googling the Illustrator message indicates that it appears only for corrupt files.
I have no problems with FrameMaker files, and have not investigated files for other apps.
Please help,
Virginia
[997 byte] By [
V_Day] at [2008-1-7]
Thanks, Alin.
I installed the fix you recommended, unfortunately it did not fix the problem. Now the Illustrator message reads "The file is damaged and could not be repaired."
Regards, Virginia
Virginia,
Make sure first the file type is the correct type (Binary) in File/Properties. It may have been set incorrectly to of of the Text flavors by VSS2005. If necessary, set the file type to Binary and try again. Also, make sure the file extension used by Illustrator is specified in VSSExplorer's Tools/Options dialog in FileTypes tab.
Could it possible the checked in file is already damaged?
You can use for instance the command line "ss.exe physical" commnand to see what is the physical name of the file (e.g. dgbcaaaa), then access directly the latest version of the file as the data\d\dgbcaaaa.a or dgbcaaaa.b. You can try copying that file in anoher place and give it the extension used by Illustrator, and see if it can be opened.
Does this corruption happens for new files added to database, or only for the existent files? (e.g. if you add a new Illustrator file to database and check it out after that, does it get corrupted? What is the file's type in database?
If you still have problems after all these, you'll probably need to talk to Richard (who provides now support for VSS) and send him one of the sample files that gets corrupted, or call product support.
Alin
Alin,
You were correct about the file type being wrong. It was ANSI/MBCS and auto-detect. I have changed the individual properties for several files to Binary and removed AutoDetect. (I have about 25 .ai files in this project so far).
I added the file extension in VSS Tools/Options/File types.
These changes resulted in Illustrator displaying a different message: "Can't open the illustration. Could not complete the requested operation."
To answer the question about the sequence: I created new .ai files, and could edit them without problems. I checked the AI file in to VSS 2005 (the local file becomes Read-Only). I can open the read-only file, make changes, and Save As. I can also remove the "Read-Only" attribute from the local file, edit it, and same it with the same name. However, if I "Get Latest Version" or check out the file, I receive the message and blank artboard.
I'd be happy to work with Richard. Can you tell me how to contact him, or forward this issue to him?
Thanks, Virginia
Richard - http://blogs.msdn.com/richardb/ or RichardB At microsoft.com. I think he's in vacation now, but will likely read the posts here, too, if not marked at resolved.
Can you send me one of those files, to double check if it's not any other setting wrong? AlinC is my email alias AT microsoft.com.
Thanks,
Alin
I exchanged some mails with Virginia, and the issue is now solved.
Basically the*.ai files seems to be simple PDF files with extension changed (if you save them with a *.pdf extension you can open them with Acroread), so all the fixes included in the GDR should apply to the *.ai files, too.The pdf/ai files start as a text file (this is why VSS incorrectly detects them as text), but later they contain binary data that gets corrupted if they are checked in as text (the CR and LF characters gets replaced by CR-LF pairs). To prevent this type of corruption, VSS has to be "helped" in identifying the ai/pdf files as Binary by specifying the files' extension in the BinaryFiles mask.
Here is a little test I made:
- Start VSSExplorer
- Make sure the GDR is installed (either by looking with WindowsExplorer at the versions of the binaries in C:\Program Files\Microsoft Visual SourceSafe, or in VSSExplorer in Help/About, the version should be VSS 8.0.50727.901)
- In Tools/Options/FileTypes, set BinaryFiles list to “*.ai, *.pdf” and close the Tools/Options
- File/AddFiles and select the base_mounting_holes.ai. In the AddFile Options dialog, I’ve left everything on default (fileType here is autodetect)
- If I look in File/Properties for the file in the VSS database I see now the Type=Binary (GDR fixed a bug here), and the size 534593, sign the file in database is not corrupted.
- I get or checkout the file now in a different local folder (Versions/Checkout), and I look at the local file in WindowsExplorer, the file has the right size (534593), and I can open it with Acroread without problem.
- If I modify the local file (I’m overwriting with a regular pdf file) and checkin, then I look in File/Properties at the file in the database, the file is still Binary (another bug fixed by GDR)
- Using the History dialog I can get either version 1 or version 2 of the file in another location, and I can open them with Acroread without problem. Both versions were persisted correctly (no need anymore to store only the latest version of the files – a 3rd bug fixed by GDR)
So, the GDR fixed at least 3 issues related to pdf/ai/binary files.
Alin