[Win32] Crashdata laten verzenden

Pagina: 1
Acties:

  • MisterData
  • Registratie: September 2001
  • Laatst online: 09-04 12:07
Zoals jullie allemaal wel eens hebben gezien komt Windows sinds ik meen XP met een melding 'Verzenden'/'Niet Verzenden' als een programma is gecrashed. Zo ook bij niet-Microsoftprogramma's. Nou zou ik graag willen dat de crash-gegevens van mijn eigen programma niet naar Microsoft, maar naar mijzelf worden gestuurd. Is er een mooie manier om dat te doen? Het zou ook al fijn zijn als de crashdata naar een tekstbestand wordt geschreven ofzo.

Nu moeten gebruikers met een probleem in een softwarepakket dat ik heb gemaakt en aan het testen ben de tekst kopiëren uit het 'meer informatie'-schermpje van dat Microsoft verzendschermpje. Ik weet van Mozilla/Firefox dat ze daarvoor een systeem genaamd 'Talkback' gebruiken, maar dat is niet gratis. Ik ben dus ook op zoek naar óf een makkelijke oplossing met de Win32-api zelf, of op een andere manier (kan ik bijvoorbeeld zelf crashes, zoals null pointer references en access faults afvangen?)

Ik heb al gezocht op verschillende termen ('crash dump' en andere termen verwijzen eigenlijk alleen naar pagina's over blauwe schermen en memory dumps daarbij en hoe die te analyzeren... niet echt wat ik zoek).

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Specifieke progammeertalen kunnen dat ook. Delphi heeft hiervoor producten als JCL en MadExcept.

We adore chaos because we like to restore order - M.C. Escher


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 21-04 20:42

Tomatoman

Fulltime prutser

Wat jij zoekt kun je in de Platform SDK vinden onder error reporting (Windows XP/2003 en later) en application recovery (vanaf Windows Vista/Longhorn).

Een goede grap mag vrienden kosten.


  • MisterData
  • Registratie: September 2001
  • Laatst online: 09-04 12:07
Aan die documentatie heb ik op het eerste gezicht niet zoveel; het is allemaal pas voor Vista en daarnaast kan ik niet zeggen wat er moet gebeuren als m'n programma crashed; ik kan zo te zien wel zelf een report opstellen en die ergens heensturen... en dat is niet wat ik wil :)

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
Waarom is het een probleem als je data naar Microsoft wordt gestuurd? Als je software digitaal getekend is (Verisign Class 3 CodeSigning certificate) dan kun je die geaggregeerde data vervolgens weer downloaden.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 21-04 20:42

Tomatoman

Fulltime prutser

MisterData schreef op donderdag 15 december 2005 @ 20:42:
Aan die documentatie heb ik op het eerste gezicht niet zoveel; het is allemaal pas voor Vista
Je vraagt Win32 API, dan krijg je dat ook :). En ja, het is inderdaad jammer dat de meeste functies nog niet beschikbaar zijn, met uitzondering van ReportFault.
en daarnaast kan ik niet zeggen wat er moet gebeuren als m'n programma crashed;
Inderdaad, die keuze wordt bewust aan de gebruiker overgelaten. Hij kan er wel voor kiezen om het programma in een recoverymodus te herstarten, waarna het programma bijvoorbeeld een vern**kt document kan herstellen.

Een goede grap mag vrienden kosten.


  • MisterData
  • Registratie: September 2001
  • Laatst online: 09-04 12:07
MSalters schreef op donderdag 15 december 2005 @ 22:01:
Waarom is het een probleem als je data naar Microsoft wordt gestuurd? Als je software digitaal getekend is (Verisign Class 3 CodeSigning certificate) dan kun je die geaggregeerde data vervolgens weer downloaden.
Dat zou ook een optie zijn geweest, ware het niet dat het hier om een hobby-project gaat en ik geen zin heb om een duur certificaat daarvoor aan te schaffen... Is het niet mogelijk om bijvoorbeeld vanuit een .exe het eigenlijke programma op te starten en vanuit de eerste .exe de fouten van het programma op te vangen en te schrijven naar bijvoorbeeld een tekstbestand?

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
CodeSigning certificaten zijn voor particulieren een stuk goedkoper dan commerciele.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein

Pagina: 1