Detecting Application Errors
Previous Top Next

At the very end of a trace .txt file, you should find a section labeled:
---- Potential Errors Detected ---

Following this label is a list of potential application errors that were detected. Thinstall marks any line that have "***" as a potential error. During analysis of the trace file, many entries are recognized as normal behavior and not listed in the potential errors section. The following shows 4 potential errors listed for the csc.exe.


Log Entry
Thread ID
Call stack
Description
009663
000019e4
csc->mscoree:
RegQueryValueExW 0x76e HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v1.1 name=Version -> 0x2 (*** not found) (lpType=0x12f3f8)
012671
000019e4
cscomp:
RegOpenKeyExA 0x80000000 (HKEY_CLASSES_ROOT)\Interface\{31BCFCE2-DAFB-11D2-9F81-00C04F79A0A3} (KEY_QUERY_VALUE KEY_ENUMERATE_SUB_KEYS KEY_NOTIFY ) -> 0x2 (key=0x0) (*** system open failed ***)
013584
000019e4
cscomp:
CoCreateInstance {E5CB7A31-7512-11D2-89CE-0080C792E5D8}.Microsoft Common Language Runtime Meta Data context=15(CLSCTX_INPROC_SERVER CLSCTX_LOCAL_SERVER CLSCTX_REMOTE_SERVER ) -> 8007007e (*Unknown return code*) *** failed
013632
000019e4
cscomp:
RaiseException Unkown_exception(e004bebe) flags=0 num_args=0 caller_addr=unknown_module:0x7ff37676 ***



RaiseException generally indicates something bad happened, so we might search upwards in the log for the Log Entry 013632 and find:

013632 19e4 RaiseException Unkown_exception(e004bebe) flags=0 num_args=0 caller_addr=unknown_module:0x7ff37676 ***

Just above the RaiseException, we find CoCreateInstance failed:

013584 19e4 CoCreateInstance {E5CB7A31-7512-11D2-89CE-0080C792E5D8}.Microsoft Common Language Runtime Meta Data context=15(CLSCTX_INPROC_SERVER CLSCTX_LOCAL_SERVER CLSCTX_REMOTE_SERVER ) -> 8007007e (*Unknown return code*) *** failed

If we scroll up a little further, we see that CoCreateInstace failed because there was an HKCR Interface registry key missing.

012671 19e4 RegOpenKeyExA 0x80000000 (HKEY_CLASSES_ROOT)\Interface\{31BCFCE2-DAFB-11D2-9F81-00C04F79A0A3} (KEY_QUERY_VALUE KEY_ENUMERATE_SUB_KEYS KEY_NOTIFY ) -> 0x2 (key=0x0) (*** system open failed ***)

To fix the problem, we simply export this registry key from a machine where our application works and rebuild. When running again, it works without problems and there are not potential errors detected.