Implement Bug-Report feature into Application,...

  • Thread starter Thread starter Kerem Gümrükcü
  • Start date Start date
K

Kerem Gümrükcü

Hi,

i would like to implement a bug report feature
into my application, if possible via email, but
it is obvious that i cant rely on MAPI settings
of the user and i cant store any connection
data into the binary like smtp server address
passwords, etc. The point is that i want to give
the user the chance to send me a email if he/she
encounters a (caught) Exception. The Exception
Information holds specific data like .NET Version,
complete call stack, Exception Object String representation,
loaded modules (a complete managed and unmanaged
process snapshot, but no memory dump of course!).
its all string (ASCII) information and will help me
to improve/fix the problem. If i had a server running 24/7
then it would be really noproblem to write a secure
client/server communication over sockets, etc...but
i dont have such a server, so i have to find another
reliable way to send this to me, preffereable in email,...

How can i achieve this or what do you recommend
to implement a transport of the information to
me via email or other communication channel...please
keep in your mind: I dont have a server!

Thanks in advance,...

Regards

Kerem

--
 
Kerem said:
Hi,

i would like to implement a bug report feature
into my application, if possible via email, but
it is obvious that i cant rely on MAPI settings
of the user and i cant store any connection
data into the binary like smtp server address
passwords, etc. The point is that i want to give
the user the chance to send me a email if he/she
encounters a (caught) Exception. The Exception
Information holds specific data like .NET Version,
complete call stack, Exception Object String representation,
loaded modules (a complete managed and unmanaged
process snapshot, but no memory dump of course!).
its all string (ASCII) information and will help me
to improve/fix the problem. If i had a server running 24/7
then it would be really noproblem to write a secure
client/server communication over sockets, etc...but
i dont have such a server, so i have to find another
reliable way to send this to me, preffereable in email,...

How can i achieve this or what do you recommend
to implement a transport of the information to
me via email or other communication channel...please
keep in your mind: I dont have a server!

Thanks in advance,...

Regards

Kerem
Hi Karem,

Would Windows Error Reporting be an option for you?

http://msdn.microsoft.com/en-us/isv/bb190483.aspx

(Please note, I've not implemented this myself, just aware of it, so
not sure how complex it is)

Damien
 
Hi Damien,

thanks for your answer, but this is something that
is totally useless for me, since microsoft will receive
the faulting error of my application and not me. The
point is, that i have to get the error report and not
someone else. I must find another way for this,...

Regards

Kerem

--
-----------------------
Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.codeplex.com/restarts
Latest Open-Source Projects: http://entwicklung.junetz.de
-----------------------
"This reply is provided as is, without warranty express or implied."
Kerem said:
Hi,

i would like to implement a bug report feature
into my application, if possible via email, but
it is obvious that i cant rely on MAPI settings
of the user and i cant store any connection
data into the binary like smtp server address
passwords, etc. The point is that i want to give
the user the chance to send me a email if he/she
encounters a (caught) Exception. The Exception
Information holds specific data like .NET Version,
complete call stack, Exception Object String representation,
loaded modules (a complete managed and unmanaged
process snapshot, but no memory dump of course!).
its all string (ASCII) information and will help me
to improve/fix the problem. If i had a server running 24/7
then it would be really noproblem to write a secure
client/server communication over sockets, etc...but
i dont have such a server, so i have to find another
reliable way to send this to me, preffereable in email,...

How can i achieve this or what do you recommend
to implement a transport of the information to
me via email or other communication channel...please
keep in your mind: I dont have a server!

Thanks in advance,...

Regards

Kerem
Hi Karem,

Would Windows Error Reporting be an option for you?

http://msdn.microsoft.com/en-us/isv/bb190483.aspx

(Please note, I've not implemented this myself, just aware of it, so
not sure how complex it is)

Damien
 
How about just using "mailto:..." to let the user sent it from their
client? (note that there might be some length issues here...)

Application.EnableVisualStyles();
using(Form form = new Form())
using (LinkLabel link = new LinkLabel())
{
link.Text = "Oops";
link.Tag = @"mailto:[email protected]?Subject=MyApp&Body="
+ Uri.EscapeDataString(new StackFrame(0).ToString());
link.LinkClicked += delegate
{
Process.Start((string)link.Tag);
};
form.Controls.Add(link);
Application.Run(form);
}

Marc
 
Hi Marc,

thats an Option i "could" use, but there is no
a garantee that the user has a well configured
email client. But i think i will leave it to the user
b giving him the chance to save the exception to
a file or copy it to clipboard,...

Thanks for the reply,...

Regards

Kerem

--
 
thats an Option i "could" use, but there is no
a garantee that the user has a well configured
email client. But i think i will leave it to the user
b giving him the chance to save the exception to
a file or copy it to clipboard,...

You can generate http POST request instead of email to post error report to
your web server.

Andrus.
 
You can generate http POST request instead of email to post error report to
your web server.

Andrus.

In ny case it would be helpful to log the error to a local file.
Then you can itterate, guiding the user, throught all the methods
(I'll throw FTP-ing the error log file in).

Microsoft's way of handling this (Windows Error) can serve as a nice
prototype for you, showing a good way to handle the user and her
privacy.
 
Hi Marc,

i decided to create a MIME (1.0) email message with
a text file attached/included that holds the complete
Exception report, including everything like loaded
assemblies, stack trace, loaded modules, process
info, runtime info, thread states, etc,...all you need!
The file is about approx 64 KB sized and will be
created in the Windows Temp Directory and
will be flagged with MoveFileEx to be deleted
on next reboot. The User is directed to "forward"
this email to the receiver xyz in the message body
part.

I have to think about some way of client/server
transfer of the data for the future when i have
my own server that will be 24/7 available. But
this solution so far seem to fit into my design
and i leave the rest to the user. The application
is manly wirtten to Administrators and Developers
and wont even exectute (with feedback that
you need to be a "real" Admin with special
priviliges!) without admin rights. So this is
a "safe" way for now,...

Future implementations will hold a encrypted
communications chanell to my server,...

Thanks for your answers...


Regards

Kerem

--
 
Kerem said:
Hi Damien,

thanks for your answer, but this is something that
is totally useless for me, since microsoft will receive
the faulting error of my application and not me. The
point is, that i have to get the error report and not
someone else. I must find another way for this,...

And then you go and get the data from Microsoft.

Alun Harford
 
Back
Top