c ++ - genererer dmp-filer fra en inproc com dll, der kører i dllhost.exe

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg skriver en inproc com dll, der kører i dllhost.exe-surrogatet, men jeg ser et problem debugging det.


I eksempler, som jeg har skrevet, har jeg en øverste undtagelseshåndterer, der opretter en .dmp-fil, jeg kan indlæse i windbg og derefter nedbrud, og jeg er ikke sikker på, hvordan man gør det fra dllhost. Er der en anden måde at generere stack dumps fra dllhost.exe på et nedbrud? Jeg har set denne side (http://support.microsoft.com/kb/910904), men det ser ud til at involvere komponenttjenesteprogrammet. Er der nogen registreringsindstillinger for dette? Fordi det er noget der vil blive installeret på andre computere.


Tak

Bedste reference


I stedet for at have processen dump selv, kan du oprette en just-time-debugger til at køre, når processen går ned. For ældre versioner af Windows er Dr.Watson en god en, der automatisk kan generere dumper til at kollapse applikationer: http://en.wikipedia.org/wiki/Dr.Watson(debugger) Jeg tror Windows Vista og nyere versioner har erstattet Dr.Watson med Windows Fejlrapportering (http://support.microsoft.com/kb/931673)[1][2]


Et enklere værktøj til at bruge er Sysinternals procdump (brug -e mulighed for at dumpe på uhåndterede undtagelser): http://technet.microsoft.com/en-us/sysinternals/dd996900[3]