[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

microsoft.public.dotnet.framework

Implement Bug-Report feature into Application,...

Kerem G?mr?kc?

9/12/2008 3:39:00 AM

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

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

8 Answers

Damien

9/12/2008 7:49:00 AM

0

Kerem Gümrükcü wrote:
> 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/bb1...

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

Damien

Kerem G?mr?kc?

9/12/2008 7:55:00 AM

0

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.co...
Latest Open-Source Projects: http://entwicklung...
-----------------------
"This reply is provided as is, without warranty express or implied."
"Damien" <Damien_The_Unbeliever@hotmail.com> schrieb im Newsbeitrag
news:c3091cf0-c59f-4d15-9ac2-0720c7c3ce6e@y38g2000hsy.googlegroups.com...
Kerem Gümrükcü wrote:
> 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/bb1...

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

Damien

Marc Gravell

9/12/2008 8:12:00 AM

0

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:you@yours.com?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

Kerem G?mr?kc?

9/12/2008 11:32:00 AM

0

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

--
-----------------------
Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.codeplex.co...
Latest Open-Source Projects: http://entwicklung...
-----------------------
"This reply is provided as is, without warranty express or implied."
"Marc Gravell" <marc.gravell@gmail.com> schrieb im Newsbeitrag
news:u$i5I9KFJHA.5224@TK2MSFTNGP03.phx.gbl...
> 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:you@yours.com?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

Andrus

9/12/2008 11:59:00 AM

0

> 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.

G.S.

9/12/2008 4:02:00 PM

0

On Sep 12, 7:59 am, "Andrus" <kobrule...@hot.ee> wrote:
> > 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.

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.

Kerem G?mr?kc?

9/13/2008 1:01:00 PM

0

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

--
-----------------------
Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.codeplex.co...
Latest Open-Source Projects: http://entwicklung...
-----------------------
"This reply is provided as is, without warranty express or implied."
"Marc Gravell" <marc.gravell@gmail.com> schrieb im Newsbeitrag
news:u$i5I9KFJHA.5224@TK2MSFTNGP03.phx.gbl...
> 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:you@yours.com?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

Alun Harford

9/14/2008 11:44:00 AM

0

Kerem Gümrükcü wrote:
> 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