views:

172

answers:

5

Hi all,

What is the normal way to send crash reports, product registrations, etc? In other words, how do you guarantee your C++ Windows apps can 'call home'?

I'm not a novice by any means but I'm completely lost in this area. I've never done it before so would appreciate any advice.

Kind Regards,

+3  A: 

Code I've written simply creates an email with the required information using the users default email application with information in plain text. I always get the permission of the user to send it, explaining clearly why I think the information is necessary. Nothing is sent without their express permission.

I also prefer to use plain text (not alway possible with memory dumps and such) so they can check what's being sent and no personal or identifying information.

I'm very careful with that stuff since there are possible legal implications with doing it, at least in the jurisdiction where I operate. In any case, it should always be done with the users permission as a matter of courtesy.

paxdiablo
A: 

Look at IMAGEHLP API

Quassnoi
+4  A: 

For crash reports I would strongly recommend taking advantage of Microsoft's WinQual service rather than attempting to create your own. It's free and seamlessly integrated with Windows, at least since XP. It also requires no code or client-side changes at all at its most basic level. To take advantage of more advanced features you can use the Windows Error Reporting APIs.

Stu Mackellar
A: 
A: 

Thanks for your responses. Apologies for being so vague but that just reflects my lack of knowledge on the topic.

Pax: I agree with what you say about getting permission of the user. Where can I get information on how to email from inside an application? ie. auto detecting system information about the default mail app? I've done a fair amount of googling with little result.

Thanks everyone.