Question

J'écris une application en C # (il est très basique, pour un de mes amis), mais j'ai un objet StreamWriter qui crée un fichier local en C :. Je dois faire Exécuter en tant qu'administrateur, et il fonctionne très bien, mais sinon il se bloque avec « L'accès au chemin « C: \ final.html ». Est refusé »

Je ne l'ai jamais travaillé avec une sorte de sécurité ou autorisations dans le code avant. Que puis-je faire pour lui donner accès à ce dossier sans avoir à exécuter en tant qu'administrateur?

EDIT: Voici ce que je fini par faire:

string desktop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
using (StreamWriter output = new StreamWriter(Path.Combine(desktop, "final.html"))
{
    //...additional code

    output.Write(inputArray.Substring(lastIndex, range.Start - lastIndex));

    //...additional code

    output.Close();
}
Était-ce utile?

La solution

En fait, vous devriez écrire à Paramètres de l'application ou les documents de l'utilisateur local dossier, pas le lecteur racine. Utilisez ApplicationData ou Personal de Environment.SpecialFolder .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top