MyApplication has encountered a problem... when not Administrator!

P

Pieter

Hi,

Something strange is happing with my Windowf Forms application (VB.NET
2005): The users had all local Administrator-rights on there pc. We changed
it to the 'normal' users, and now they can't run our V.NET application
anymore!

The application starts (you can see the screen and caption etc), and than
they get the well known error "MyApplication has encountered a problem and
needs to close" with the "send error report"-button etc.

When we change their rights back to PowerUser ou Administrator, it works
again...

Does anybody get any idea why this happens? And how to find a solution? Do
they need some special rights on something?
They all have Office 2003, some of them are on W2K, others on XP (and they
all have the problem)...

Thanks a lot in advance,

Pieter
 
P

Pieter

Hi,

I do have exception handlers, which write all the exception to a file, but
there isn't any exception written to the file...
Some strange thing also: I tried to see where the error happens, by writing
every other line a small message to a file. And it never wrote one...
like this:
Private Sub frmMain_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Load
MessageSilent("GlobalErrorHandler")
'error-handeler
AddHandler System.Windows.Forms.Application.ThreadException,
AddressOf GlobalErrorHandler

MessageSilent("Info.ProductName")
Me.Text = My.Application.Info.ProductName & " - version " &
My.Application.Info.Version.ToString

MessageSilent("Test Connection")

When I don't put the MessageSilent-log-writers in it, the Me.Text = .. is
executed (because I can see it in the caption), but with the MessageSilent
it doesn't change the caption...

To be complete: this is the wholce MessageSilent-method:
Public Sub MessageSilent(ByVal strMessage As String, Optional ByVal
strCaption As String = "")
Dim swFile As StreamWriter
swFile = New StreamWriter(Application.StartupPath & "\" &
strErrorFile, True, System.Text.Encoding.GetEncoding(1252))
If strMessage.Length > 0 Then
swFile.WriteLine(Format(Now, "dd/MM/yyyy HH:mm:ss fffffff ") &
"MessageSilent: " & strCaption & " - " & strMessage)
Else
swFile.WriteLine(Format(Now, "dd/MM/yyyy HH:mm:ss fffffff ") &
"MessageSilent: ")
End If
swFile.Flush()
swFile.Close()
End Sub
 
J

johan.appelgren

Users do not have permission to write in the "c:\program files"
directory. So if you have your application installed in the program
files directory it will fail when you use the MessageSilent method.

Where does your exception logger write its log file? Does your user
have write permissions there?
 
P

Pieter

It is indeed in the C:\Program Files\MyApplication\-directory...

Where should I put such a log-file normally? are there other 'system'
directory's in which they can't write neither? Documents and Settings?
 
P

Pieter

This is the exception that is written in the eventlog (using DameWare):

EventID: 5000
Source: .NET Runtime 2.0 Error
Description: EventType clr20r3, P1 ghost.exe, P2 0.0.3.8, P3 43eb40d3, P4
mscorlib, P5 2.0.0.0, P6 4333ab80, P7 32f8, P8 15a, P9
system.unauthorizedaccess, P10 NIL.
 
C

Carlos J. Quintero [VB MVP]

You can write application data in folders inside C:\Document and
settings\<user>.

--

Best regards,

Carlos J. Quintero

MZ-Tools: Productivity add-ins for Visual Studio
You can code, design and document much faster:
http://www.mztools.com
 
P

Pieter

I've tested it, and that's indeed the problem....
Really a pitty that Microsoft doesn't throw a normal exception in such a
case :-( It would have saved me some hours of searching.

Thanks a lot Carlos and Johan for the help!!!

Pieter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top