Click here to Skip to main content
12,765,176 members (36,779 online)
Rate this:
Please Sign up or sign in to vote.
See more: VB VB.NET
In my program xPro I am having problems with it using files in it's directory in c:\Program Files(x86)\xPro. In one form it rights data to a .txt file when it closes. Everytime I try to close the program it says that access to the .txt file is denied. Any help?

Here is the code for Form Closing:
TextBox2.Text = ""
        For Each thing As Object In ListBox1.Items
            TextBox2.AppendText(Trim(thing.ToString & vbNewLine))

        Dim SR As New StreamWriter(My.Settings.MyDirectory + "\Friends.txt")
        Dim SR2 As New StreamWriter(My.Settings.MyDirectory + "\Friends.txt")

I do now realize that I should add a Try statement but eitherway that doesn't exactly fix the problem.

************** Exception Text **************
System.UnauthorizedAccessException: Access to the path 'C:\Program Files (x86)\xPro\Friends.txt' is denied.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.StreamWriter.CreateFile(String path, Boolean append)
   at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize)
   at System.IO.StreamWriter..ctor(String path)
   at xPro.FL.FL_FormClosing(Object sender, FormClosingEventArgs e)
   at System.Windows.Forms.Form.OnFormClosing(FormClosingEventArgs e)
   at System.Windows.Forms.Form.WmClose(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Posted 4-Oct-12 21:01pm
Updated 4-Oct-12 21:03pm
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

On Windows7 the "Program Files" folder is protected by the UAC, so to write there you need administrator privileges (and the UAC confirmation).

It is better to write "data" to the user's local profile folders instead, use the Environment variable for this :[^]
Rate this: bad
Please Sign up or sign in to vote.

Solution 2

Access to the path 'C:\Program Files (x86)\xPro\Friends.txt' is denied.
Proper security privileges are not in place. You need to make sure that write permissions are in place. Further, if the text file is marked readonly, you cannot edit it until it is writable.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

    Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web02 | 2.8.170217.1 | Last Updated 5 Oct 2012
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100