Если вы работаете в Windows 2003 и не включили олицетворение ASP.NET и запускаете приложение в DefaultAppPool или пуле приложений, настроенном для работы под идентификатором " Сетевая служба », тогда вам нужно дать учетной записи« Сетевая служба »разрешение на запись в папку назначения. Если вы используете сайт в пуле приложений, который использует удостоверение, отличное от «Сетевая служба», то для этой учетной записи могут потребоваться разрешения на запись в целевую папку.
Если вы используете Windows 2000, то учетной записи '<MACHINENAME>\ASPNET'
потребуются разрешения на запись в папку назначения.
Если у вас включена олицетворение, вам нужно вместо этого дать разрешение на запись учетной записи анонимного пользователя в папку назначения.
Чтобы проверить, включена ли олицетворение, откройте (при условии ASP.NET 2.0), затем проверьте файл machine.config (C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG), чтобы проверить, есть ли у вас следующая настройка:
<identity impersonate="true"/>
Это также может быть переопределено в файле web.config вашего приложения.
Кроме того, если вы работаете в среде с частичным доверием, то, скорее всего, вы сможете писать только в папку приложения веб-сайта, потому что FileIOPermission по умолчанию обычно устанавливается в $ AppDir $, то есть вы не можете изменять файлы где-либо еще даже с правильными разрешениями NTFS.
Если вы пишете в общий сетевой ресурс, то StingyJack ответит вам, но условия среды частичного доверия все еще применимы.
Но сначала проверьте свои NTFS-разрешения, это, вероятно, лучшая ставка.
Надеюсь, это поможет
Кев