James's profileJames FinniganPhotosBlogListsMore ![]() | Help |
|
May 11 finding where a bad HRESULT is returnedt ; z (@eax != 0x8007000EL) What does this cryptic command do for you? I was recently helping a friend debug a failure where an error hresult was returned but it was the kind of error that could have been coming from anywhere. Rather than step through the code by hand (although that has some real value), we decided to just check eax until we got the error code. This is where the cryptic command comes in. z will repeat the command before it until the condition in parenthesis is true. It's the weirdest do/while syntax you've ever seen. It will tell you how many times it repeats the command as well - which is sort of spammy, but didn't bother us too much. It's worth mentioning that this command will execute a LOT and took several hours for us to run so it's not for issues that require quick turnaround. But given a spare computer, it can save some developer time. (I once had a friend that hand-washed her clothing all the time because she could finish before the washing machine and was "saving time". I guess she was sort of right but I never really saw it her way.) We tried using debugger command scripts to achieve the same effect, but it didn't work because the script doesn't stop while the t executes. Too bad, their do/while stuff has nicer syntax and doesn't spam you with how many times it ran. This posting is provided "AS IS" with no warranties, and confers no rights. Comments (2)
TrackbacksThe trackback URL for this entry is: http://jamesfinnigan.spaces.live.com/blog/cns!9062539B2F0077D6!140.trak Weblogs that reference this entry
|
|
|