Cesta ke složce webové aplikace   zodpovězená otázka

VB.NET, XML

sanžím se o toto:

Dim w As New XmlTextWriter("soubor.xml", Nothing)

Měl jsem představu že soubor se vytvoří ve složce kde běží webová aplikace, ale ejha, hlásá mi to chybu

"Access to the path 'c:\windows\system32\inetsrv\soubor.xml' is denied."

Jak mám aplikací říct že má ukládat do své složky na servru a né do nějaké v system32 ?

zkusil jsem i

Dim w As New XmlTextWriter(Server.MapPath("~/soubor.xml"), Nothing)

ale stále to hlásí to samé, ignoruje to cestu kterou mu zadám.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

To druhé by fungovat mělo, neháže to jinou chybu?

Jinak cestu k aplikaci zjistíte přes Request.PhysicalApplicationPath.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

To druhé by stejnou chybu rozhodně hlásit nemělo. Pochybuji, ze Server.MapPath vrací odkaz do system32 složky. Není ta chybová zpráva jiná? Popřípadě zkontrolujte, jakou cestu přesně vrací.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tak sem se dnes opět k tomu dostal a zjištuju, že když projekt spustím z lokálu, soubor se vpořádku vytvoří v složce s aplikací a vše je OK.

Když aplikaci ale nahraju na server (Win Server 2003), tak to začne hlásat popisovanou chybu :-(

nahlásit spamnahlásit spam 0 odpovědětodpovědět

To pořád nebrání ve vyzkoušení navrhnutého postupu.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tak sem z toho jelen.

Ted sem tam aplikaci bez valných změn nahrál znovu, ale omylem jsem tam nahral i vytvořený soubor.xml z lokálu a chybová hláška se změnila na:

Access to the path 'c:\inetpub\wwwroot\starea\soubor.xml' is denied.

a v StackTrace:

[UnauthorizedAccessException: Access to the path 'c:\inetpub\wwwroot\starea\soubor.xml' is denied.]

a to už tam zůstává i při odtranění tohoto souboru.

Dobré je to v tom, že už se snaží zapisovat na správné místo, blbý je že se tváří že tam nemá práva. Tomu právě nerozumím, protže sem měl pocit že aplikace si do své složky může zapisovat. I uživatel pod kterým jsem přihlášen má práva pro úplné řízení.

13:36 update

i sem přidal plná práva pro ASPNET, už nevím co tam víc povolit :-(

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Na IISce by mělo stačit povolit zápis do adresáře té webové aplikace.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Jooo tak sem nakonec dopátral a dal plná práva IIS_WPG a začalo to zapisovat. To je prapodivný.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback