Tuesday, June 1, 2010

Good Links

A Crash Course on the Depths of Win32™ Structured Exception Handling

Exception Handling

First and second chance exception handling

Distinction between the first and second chance exception: the debugger gets the first chance to see the exception (hence the name). If the debugger allows the program execution to continue and does not handle the exception, the program will see the exception as usual. If the program does not handle the exception, the debugger gets a second chance to see the exception. In this latter case, the program normally would crash if the debugger were not present.

If you do not want to see the first chance exception in the debugger, you should disable first chance exception handling for the specific exception code. Otherwise, when the first chance exception occurs, you may need to instruct the debugger to pass on the exception to the program to be handled as usual.

Does a first chance exception mean there is a problem in my code?
First chance exception messages most often do not mean there is a problem in the code. For applications / components which handle exceptions gracefully, first chance exception messages let the developer know that an exceptional situation was encountered and was handled.


References:
First and second chance exception handling

Sunday, May 30, 2010

Utilities

1. You can use the undname.exe to convert a decorated name to its undecorated form.

2. SubInACL is a command-line tool that enables administrators to obtain security information about files, registry keys, and services, and transfer this information from user to user, from local or global group to group, and from domain to domain.

Gook Link:- Clickhere

3.guidgen To generate new GUIDs

4.ErrorLookup To decode last error code.

5.HRPlus To convert the HResult into string

6. DUMPBIN
a. Using DUMPBIN to View Decorated Names

Assembly Language Programming

Why does the compiler generate a MOV EDI, EDI instruction at the beginning of functions?

Assembly language1

Assembly language2

THE 80x86 INSTRUCTION SET