(Visual WD 2010) Accesso al percorso 'H:\dynpages\dynpages\data\user\p...

sabato 11 giugno 2011 - 12.51
Tag Elenco Tags  C#  |  .NET 2.0  |  Windows 7  |  Visual Studio 2010  |  Chrome  |  CSS 3.0  |  XHTML 2.0

giulioz Profilo | Newbie

ciaooo!!
ho un problema con visual web developer 2010!!
sto facendo un cms in c# dove le pagine degli utenti sono nella cartella "data\user\pages", ma se cerco di fare ReadAllLines() mi da Accesso al percorso 'H:\dynpages\dynpages\data\user\pages' negato.

ecco il codice che da l'eccezzione:

public static List<Page> GetPagesInFolder(string url) { List<Page> buff = new List<Page>(); foreach (string a in System.IO.Directory.GetFiles(url)) { string pn = System.IO.File.ReadAllLines(url)[0]; List<string> h = new List<string>(System.IO.File.ReadAllLines(url)); h.RemoveRange(0,1); buff.Add(new Page(pn, h.ToString())); } return buff; }

ecco la pagina di errore:

Errore server nell'applicazione '/'.

Accesso al percorso 'H:\dynpages\dynpages\data\user\pages' negato.

Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

Dettagli eccezione: System.UnauthorizedAccessException: Accesso al percorso 'H:\dynpages\dynpages\data\user\pages' negato.

ASP.NET non è autorizzato ad accedere alla risorsa richiesta. Provare a concedere diritti di accesso alla risorsa all'identità di richiesta di ASP.NET. ASP.NET dispone di un'entità di processo di base (in genere {MACHINE}\ASPNET su IIS 5 o Network Service su IIS 6) che viene utilizzata se l'applicazione non esegue la rappresentazione. se l'applicazione esegue la rappresentazione tramite <identity impersonate="true"/>, l'identità sarà rappresentata dall'utente anonimo (in genere IUSR_MACHINENAME) o dall'utente autenticato che ha eseguito la richiesta.

Per concedere l'accesso a un file ad ASP.NET, fare clic su di esso con il pulsante destro del mouse in Esplora risorse, scegliere Proprietà e fare clic sulla scheda Protezione. Fare clic su "Aggiungi" per aggiungere l'utente o il gruppo appropriato. Evidenziare l'account ASP.NET e selezionare la casella relativa all'accesso desiderato.

Errore nel codice sorgente:


Riga 150: foreach (string a in System.IO.Directory.GetFiles(url))
Riga 151: {
Riga 152: string pn = System.IO.File.ReadAllLines(url)[0];
Riga 153: List<string> h = new List<string>(System.IO.File.ReadAllLines(url));
Riga 154: h.RemoveRange(0,1);

File di origine: H:\dynpages\UserLib\User.cs Riga: 152

Analisi dello stack:


[UnauthorizedAccessException: Accesso al percorso 'H:\dynpages\dynpages\data\user\pages' negato.]
System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +7716447
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) +1162
System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options) +65
System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize) +87
System.IO.StreamReader..ctor(String path, Encoding encoding) +15
System.IO.File.ReadAllLines(String path, Encoding encoding) +79
System.IO.File.ReadAllLines(String path) +19
UserLib.Page.GetPagesInFolder(String url) in H:\dynpages\UserLib\User.cs:152
UserLib.User..ctor(String username) in H:\dynpages\UserLib\User.cs:78
dynpages.showpage.Page_PreInit(Object sender, EventArgs e) in H:\dynpages\dynpages\showpage.aspx.cs:15
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Page.OnPreInit(EventArgs e) +8703038
System.Web.UI.Page.PerformPreInit() +31
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +282

Informazioni di versione: Versione di Microsoft .NET Framework:2.0.50727.4959; Versione di ASP.NET:2.0.50727.4955

alx_81 Profilo | Guru

>ciaooo!!
ciao

>ASP.NET non è autorizzato ad accedere alla risorsa richiesta.
>Provare a concedere diritti di accesso alla risorsa all'identità di richiesta di ASP.NET.
>ASP.NET dispone di un'entità di processo di base (in genere {MACHINE}\ASPNET su IIS 5 o
>Network Service su IIS 6) che viene utilizzata se l'applicazione non esegue la rappresentazione.
>se l'applicazione esegue la rappresentazione tramite <identity impersonate="true"/>,
>l'identità sarà rappresentata dall'utente anonimo (in genere IUSR_MACHINENAME)
>o dall'utente autenticato che ha eseguito la richiesta.

>Per concedere l'accesso a un file ad ASP.NET, fare clic su di esso con il pulsante destro
>del mouse in Esplora risorse, scegliere Proprietà e fare clic sulla scheda Protezione.
>Fare clic su "Aggiungi" per aggiungere l'utente o il gruppo appropriato.
>Evidenziare l'account ASP.NET e selezionare la casella relativa all'accesso desiderato.
questo messaggio di errore non ti basta per risolvere il problema? Hai provato a seguire passo passo le istruzioni?

--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5