problème "access denied" [ C# ] - C#/.NET managed - Programmation
Marsh Posté le 24-07-2004 à 11:16:38
il faut que l'utilisateur ASPNET aie les droits d'écriture sur ce répertoire.
Marsh Posté le 24-07-2004 à 13:26:12
JagStang a écrit : il faut que l'utilisateur ASPNET aie les droits d'écriture sur ce répertoire. |
C'est pas un projet ASPNET, mais une bonne vielle application Windows basic.
Marsh Posté le 24-07-2004 à 14:13:28
pardon
Marsh Posté le 25-07-2004 à 00:23:59
Si c'est toi qui déclare a la main path et newPath, pense soit a mettre
string path = @"C:\ton\chemin";
ou bien string path= "C:\\ton\\chemin\\";
sinon j'ai essayé de recréer ton script sur mon pc , et perso pas d'erreur donc la seule chose que je peux te dire c'est de verifier tes path
Marsh Posté le 27-07-2004 à 11:31:57
x1800+ a écrit : Si c'est toi qui déclare a la main path et newPath, pense soit a mettre |
Non il ny a pas de problème avec le path. Mais j'ai essayé de faire fonctionner ce bout de code séparément. et effectivement, il fonctionne très bien. le problème se situe ailleurs, je sais pas encore ou, mais je vais approfondir le sujet...
Merci de vos réponses à tous.
Marsh Posté le 27-07-2004 à 14:32:18
Le problème peut venir si auparavant tu as effectué une opération sur newPath, genre exécuté cette même fonction une première fois, et à la seconde exécution hop ça marche plus. Si c'est ça, c'est parce que malgré ton myBitmap=null et la fin du bloc où tes variables sont déclarées, le bitmap vit encore, tant qu'il a pas été garbage collecté. Il faut appeler Dispose ou mieux, utiliser using.
Code :
|
Marsh Posté le 24-07-2004 à 10:16:23
Voilà, alors ce que je veux faire est très simple. Créer un fichier bitmap (.bmp) à partir d'une image JPEG ou autre. J'ai crée une procédure pour ça (voire ci-dessous), mais malheureusement a chaque fois que je veux créer le FileStream j'obtiens toujours le même message d'erreur 'Access to the path "c:\" is denied.' et ce sur n'importe quel emplacement sur mon disque dur.
Je suis sous Windows XP pro avec le compte Administrateur, c'est un projet Windows application. C'est sûrement un truc très con a modifié quelque part, mais je sais pas ou ni quoi. Donc si quelqu'un sait merci d'avance.
private void makeWallpaper(string path, string newPath)
{
try
{
if (File.Exists(newPath))
File.Delete(newPath);
FileStream fs=new FileStream(newPath,FileMode.CreateNew);
Bitmap myBitmap = new Bitmap(path);
myBitmap.Save(fs,ImageFormat.Bmp);
fs.Close();
myBitmap=null;
}
catch(Exception e)
{
MessageBox.Show(e.Message);
}
}