System.UnauthorizedAccessException no fue manejado

Estoy recibiendo una excepción de acceso denegado ¿Cómo puedo arreglar esto?

Aquí está la excepción:

System.UnauthorizedAccessException no se manejó HResult = -2147024891 Mensaje = Se denegó el acceso a la ruta 'c: \ message.txt'.
Fuente = mscorlib

Aquí está el código:

    public static void WriteToFile(string s)
    {
        fs = new FileStream("c:\\message.txt",
        FileMode.Append, FileAccess.Write);
        sw = new StreamWriter(fs);
        sw.WriteLine(s);
        sw.Flush();
        sw.Close();
        fs.Close();
    }

EDITAR: Funciona si ejecuto vs2012 como administrador, pero ¿hay alguna forma o razón para hacerlo como un usuario normal?

Y esto funciona:

    public static void WriteToFile(string s)
    {
        fs = new FileStream(@"C:\Users\KristjanBEstur\Documents\message.txt",
        FileMode.Append, FileAccess.Write);
        sw = new StreamWriter(fs);
        sw.WriteLine(s);
        sw.Flush();
        sw.Close();
        fs.Close();
        File.Delete(@"C:\Users\KristjanBEstur\Documents\message.txt");
    }

Respuestas a la pregunta(5)

Su respuesta a la pregunta