|
patbob wrote: Check into sxstrace. It generates a log of all side-by-side library loads,
reporting what library versions were checked and which were loaded (or not
found). Totally useless for C# though, but useful for native code.
Hey, It will be very helpful to me if you please instruct me how to use that tool ??
|
|
|
|
|
I don't have time to do a full how-to, but briefly, you launch it from an admin window with the options to start logging. Launch your app and bring it to the error. Then run sxstrace again to stop logging. Then run sxstrace a final time to translate the binary log to a txt file. You'll have to google for details.
In theory, every SxS access/DLL-search gets logged, which versions of which libraries it was looking for, which it found, their suitability, etc. In practice, it seems not everything.
Hope that helps.
We can program with only 1's, but if all you've got are zeros, you've got nothing.
|
|
|
|
|
Thanks, this is enough to get started! If I require more... I'll google it!
|
|
|
|
|
Not only .NET. It also happens with native exe's. Mostly if there is an error in the application manifest. (Not the .NET assembly manifest, the one embedded in the exe)
|
|
|
|
|
Stack overflow exceptions! Although they don't happen often, they are tricky to debug as the stack trace isn't available to me when it happens.
|
|
|
|
|
This happened quite often to me, once I had written a file finder program. During tests, once I tried to search a really huge directory tree and boom! Stack Overflow. And that is still in my code --
Known Issues - "WONTFIX" - Craches with huge file trees!
|
|
|
|
|
SQL Server: "String or binary data would be truncated" which column? "aaaaah i'm not telling you!!" Drives me mad every time!
|
|
|
|
|
The offending value would be kinda nice to know as well!
I once had to deal with this in a daily import file that we were processing from another company. The file had tens of thousands of records, and I wrote the code to import the data into our system. Someone at the company who gave us the import file liked to go in and make manual edits once in a while...yeah. The specs were not meant as suggestions.
So I had one bad value in one field of one record in a large import file, causing the whole import to bomb, and no clue other than a guess at which columns were suspect. Thanks MS SQL. I had to implement a binary search to cast values in the file until I found the bad one. Good times.
|
|
|
|
|
Multiple-step operation generated errors. Check each status value.
|
|
|
|
|
There are quite some Exceptions I really don't like... NullReference, String or binary data would be truncated, that sort of stuff. Mostly because the error doesn't indicate what was null or what data would be truncated.
But the worst of them all, mostly because I've seen it not handled correctly way to often, See the inner Exception for details...
Ok, so where is that inner exception? Not in some logging, not in some message box, actually it is nowhere! The programmer programming this code did not ever stop to think about the fact that an Exception may have an inner exception. Good luck finding out what's wrong...
Now comes the fun part. I fixed it and the first Exception I got had an inner exception in the inner exception... Luckily I log exceptions recursively for these cases
It's an OO world.
public class Naerling : Lazy<Person>{
public void DoWork(){ throw new NotImplementedException(); }
}
|
|
|
|
|
We had an external consultant, and he implemented a very meaningfull error message for all type of errors: "An Error occured"
|
|
|
|
|
LOL, this kind of lazy exception "handling" is worse than none at all
But why should a consultant care, they don't have to actually maintain the code.
|
|
|
|
|
"There was an error reading the document" – Adobe's PDF reader when there is an error in your PDF, anywhere in the document. It won't tell you which object or page the error was on, never mind what you actually did wrong.
|
|
|
|
|
Oracle also has a really informative kind of Exception:
ORA-00600: internal error code, arguments: [12333], [205], [70], [164], [], [], [], []
|
|
|
|
|
The Operationen was completed succsesfully
head vs wall
|
|
|
|
|
Error number 5692305182344859072314609
|
|
|
|
|
Apple used to give ones like
An error of type 10 occurred because an error of type 10 occurred.
|
|
|
|
|
|
How in the world I'll press F1 after keyboard error??
|
|
|
|
|
I guess the worst exception I have seen is the "uncaught exception"...
That one who calls std::terminate() and then calls abort() :P
Saludos!!
____ichr@mm
:wq
|
|
|
|
|
Seems to me that worst is being interpreted as either: nonsensical, useless (programmer too lazy to write a meaningful message), or a dreaded message, where something bad really did happen. Here is a nonsensical one: One recent message in my Windows-7 system event log was
The service failed to start. Reason: The service finished successfully.
|
|
|
|
|
KLSmith wrote: The service failed to start. Reason: The service finished successfully.
This is a good one... Also in my event log!
|
|
|
|
|
"Catastrophic error" is a real message I've seen years ago, from Windows XP.
|
|
|
|
|
I always hated working in Oracle's PL/SQL. I'd get "BAD END STATEMENT", which I finally tracked down to mean "LABEL NOT FOUND". I guess it found the end of the program before it found the label it was looking for and decided it was the end statement's fault. I'm sorry, I wrote a better interpreter in high school when I made a program that would read symbolic labeled BASIC programs and generate the version with line numbers (that was required at that time).
I was slowly wallpapering my cubicle with Oracle error messages and their real meaning.
The Oracle database engine may have been programmed by the A-Team, but I always thought the programming interface was written by the F Troop.
To this day, I refuse to do Oracle database programming.
Psychosis at 10
Film at 11
Those who do not remember the past, are doomed to repeat it.
Those who do not remember the past, cannot build upon it.
|
|
|
|
|
The one that should be raised but isn't, or caught and simply ignored, causing the application to not work correctly with no indication as to why.
|
|
|
|