Varje gång jag försöker uppdatera en fil så får jag detta felmeddelande: Ser ut som om du saknar mappen wwwroot, Hmm, jag har gjort om lite, min "wwwroot" är då "spel"! Nädå, det måste den inte, men via IIS admin måste du peka ut var rooten är. Är den c:\spel skall det vara okej. Dock får du aldrig skriva högre upp i trädstrukturen från din "spelmapp". Om du vet att du satt alla rättigheter så kan felet bero på en bug, iallafall om du kör windows 2000. 1. Har du bara döpt om wwwroot till spel eller har du skapat en ny mapp i inetpub bredvid wwwroot som heter spel? Jag använder Win XP Pro. Om du har gjort en ny mapp så spelar det ingen roll om den heter spel eller wwwroot. Vad som är viktigt är säkerhetsinställningarna på mappen i Utforskaren och i IIS:en. Om du har tagit bort din gamla wwwroot så har du problem, annars kan du kolla alla inställningarna på den. Jag har wwwroot kvar, som sagt använder jag den just nu, fast jag får ju samma felmeddelande ändå! Hmm, det kan nog vara någonting med rättigheterna ändå, jag kan inte heller flytta filer, använder denna kod (CodeBehind): med Är det inte bara så enkelt att maskinnamn\ASPNET användaren per default bara har läsrättigheter. Om du vill skapa, ändra i eller radera filer i vissa kataloger så måste du ge maskinnamn\ASPNET användaren skriv-rättigheter för dessa kataloger. (I XP högerklicka på aktuell katalog, välj egenskaper, välj säkerhetsfliken, lägg till maskinnamn\ASPNET användaren och ge maskinnamn\ASPNET skriv-rättigheter)Access to the path...
"Access to the path "c:\inetpub\spel\readme.asp" is denied."
Härär koden:
[kod]
Sub UpdateFile()
DIm strFile as string, strNewContent as string
strFile = Request.Form("name")
strNewContent = Request.Form("content")
Dim ioFile as System.IO.File
IF ioFile.Exists(Server.MapPath(strFile)) Then
Dim fs as System.IO.FIleStream = System.IO.File.OpenWrite(Server.MapPath(strFile))
Dim info As Byte() = _
New System.Text.UTF8Encoding(True).GetBytes(strNewContent)
fs.Write(info, 0, info.Length)
fs.Close()
End IF
Response.Redirect("SealStudio.aspx?action=showFile&file="& strFile)
End Sub
[/kod]
Jag vet att det är fulle rättigheter till mappen som filen ligger i, det är rootmappen..Sv: Access to the path...
pathen borde nog se ut så här: c:\inetpub\wwwroot\spel\readme.aspSv: Access to the path...
Måste mappen heta just "wwwroot" eller?Sv: Access to the path...
Sv: Access to the path...
Hittade denna KB'n men vet inte om det gäller din applikation:
http://support.microsoft.com/default.aspx?scid=kb;en-us;323293&Product=aspSv: Access to the path...
2. Om du skapat en ny mapp, har du kollat så att den har samma rättighetsinställningar som wwwroot?
3. Om du döpt om wwwroot, har du kollat i IIS så att allt stämmer där?
4. Om du skapat en ny mapp, har du ändrat webroten i IIS till den nya mappen och kollat inställningarna i IIS:en så att de överensstämmer med wwwroot inställningarna?
5. Varför döpa om wwwroot? Bara upplagt för bekymmer, vilket du nu blivit varse.Sv: Access to the path...
Jag har gjort en ny mapp, kallad "Spel", varför jag gjorde denna var för att det var en massa filer i wwwroot som jag inte orkade ta bort :)
Nu har jag bytt tillbaka till "wwwroot" men jag får samma felmeddelande..
Det är inget att jag har glömt någon "Close()" eller "Dispose()"?Sv: Access to the path...
Sv: Access to the path...
Vad är felet?Sv: Access to the path...
Sub MoveFile() 'denna fungerar inte korrekt
Dim strPath, strNewDest, strRedirect as string
strPath = Request.Querystring("file")
strNewDest = Request.Form("Into")
IF Microsoft.VisualBasic.Left(strPath, 1) = "\" Or Microsoft.VisualBasic.Left(strPath, 1) = "/" Then
strPath = Microsoft.VisualBasic.Right(strPath, Microsoft.VisualBasic.Len(strPath) - 1)
End IF
IF not Microsoft.VisualBasic.Left(strNewDest, 1) = "\" Or not Microsoft.VisualBasic.Left(strNewDest, 1) = "/" Then
strPath = "\" & strPath
End IF
If System.IO.Directory.Exists(Server.MapPath(strNewDest)) Then
IF System.IO.File.Exists(Server.MapPath(strNewDest) & "\" & strPath) Then
strRedirect = "Exist.asp?do=FileExist" 'Filen finns redan
Else
Dim objFileInfo as New System.IO.FileInfo(Server.MapPath(strPath))
objFileInfo.MoveTo(Server.MapPath(strNewDest))
strPath = Microsoft.VisualBasic.LCase(Microsoft.VisualBasic.Right(strPath, Microsoft.VisualBasic.Len(strPath) - Microsoft.VisualBasic.InStrRev(strPath, "\", -1, 1)))
strRedirect = "SealStudio.aspx?action=showFile&file="& strNewDest & "\" & strPath
End IF
Else : strRedirect = "Exist.asp?do=FolderNotExist" 'Mappen hittades inte
End IF
Response.Redirect(strRedirect)
End Sub
Och får då felmeddelandet: "Det går inte att skapa en fil som redan finns."
Konstigt nog är felmeddelandet på svenska.
Jag har också testat att flytta filen med denna kod:
<code>
System.IO.File.Move(Server.MapPath(strPath), Server.MapPath(strNewDest))
</code>
Dock får jag samma felmeddelande..
EDIT:
Hur gör man sådana där fina kodrutor?
Sv: Access to the path...
< code>
Din kod...
du kan även välja vilket språk som tex. vb.net
då blir det så här:
< code vb.net>
din kod...
< /code>
< /code >
Dock ej med mellanslag efter <
/mSv: Access to the path...