Hi,
It may be a weird question, but here it is:
Is there a way to identify if the dwg file was created from scrap or was spawned from another file?
Also is there other related data saved in the dwg file?
Thank you,
alex
Solved! Go to Solution.
Solved by owenwengerd. Go to Solution.
The answer depends on the contents of the files, and yes there is "other related data" saved in .dwg files.
Owen,
Thank you for your answer. Of course it raises more questions:
Could you share additional details: how does it depend on file contents, what additional data is saved, etc.
Is there a API for this data?
Where is it saved, Dictionary?
Of course, if there exists any documentation on this, a pointer to it will suffice.
Thanks,
alex
There isn't any way to answer your vague questions without trying to guess at your goals. It's usually better to explain the underlying problem, then ask how to solve it.
Owen,
The current problem is to check if a dwg file was created from scrap or was spawned; how it was spawned: SaveAs, WBlock or plain FileCopy (probably impossible); get a list of parent files (probably impossible); how long the file was open in the editor (not necessaryly TDINDWG if it was spawned from another).
In addition and more generally, I am intersted in the subject of inherited information in a dwg file in a theoretical way, so I'll appreciate any info on the subject.
I am aware of the fact that it is possible to trace the origin of objects in dwg, using the ID numbers and prove that an object in dwg B actually originated in dwg A, but this is not what I have in mind at the present time. The info I need is at the file level.
Thank you,
alex
It sounds like you are interested in information about forensic analysis of .dwg files. I don't think you'll find much specific information on the subject. There is no such thing as unimpeachable information about ancestry stored inside a .dwg file; it must be deduced.
In my experience, there are always ways to ascertain with varying degrees of certainty where a specific file came from and even it's history, but these kinds of things are very case-specific, and depend on the exact versions of the files involved, their content, the availability of ancestral files for comparison, the level of cooperation by the file creators, etc. Sometimes entity handles are sufficient to establish a file's ancestry to a high degree, but there are many other things in .dwg files, both documented and undocumented, that can be used to build a case.
Owen,
Forensics is not my intention. I am sorry if I was misleading in my questions.
Anyway, I am aware of your work on the subject and wouldn't presume to compete.
My needs are simple:
- detect whether a drawing file is a 1st generation file, created with the NEW command.
- if not, get the time spent in the file without the time its ancestors accumulated.
I'll apreciate any information/documentation on the subject.
Thank you
alex
You can of course use TDCREATE to determine when a file was created with the NEW command. I guess you're specifically thinking about the case where an existing file is forked, and wanting to determine the value of TDINDWG at the time of the fork. You can deduce common ancestry (i.e. you can know that two files came from the same source), but there is no way to do deduce absolute time only from the contents of a standard file. This kind of thing requires electronic document management software.
Owen,
As TDCREATE is unchanged across WBLOCK and SAVEAS, there is no help there, except common ancestry.
So, problem resolved but not solved.
Well, can't win them all.
Thank you for your help
alex
Just a thought:
On the other hand, given the precision of the time sysvars, if two files have the same TDCREATE, I think it is reasonably certain that they have the same ancestry, at least in the same location.
Well, maybe not in court, by I am not looking to that aspect.
alex