2

Эта проблема сводит меня с ума.

CS0016: не удалось записать в выходной файл 'c:\Windows\Microsoft.NET\Framework <64>\vX.X.XXXX\Temporary ASP.NET Files\root\XXXXXX\XXXXXX\App_Web_XXXX.aspx.XXXXXXXX.XXXXXXXX.dll '-' Неверное имя каталога. '

Я попытался дать полный доступ к сетевому сервису в C:\windows\temp и папке temp в папке v4.0.xxx.

Сервер является Windows Server 2008 R2; SQL Server 2008 R2 установлен на том же сервере.

Я полагаю, что это может быть как-то связано с установкой SQL Server после установки .NET Framework 4.0, но я запустил aspnet_regiis.exe -u а затем -i для переустановки. Я пытался из папки Framework и Framework64, но безрезультатно.

У кого-нибудь еще возникла такая проблема? Если так, как ты это исправил?

3 ответа3

2

В расширенных настройках пула приложений убедитесь, что для параметра «Модель процесса> Загрузить профиль пользователя» установлено значение "Истина".

У меня была точно такая же проблема. Я попытался изменить разрешения, отключить антивирус, создать новый пул приложений и переустановить .NET 4.0. Я даже создал новый сайт со страницей «Default.aspx» и попытался просмотреть этот сайт. Даже на этом сайте была ошибка компиляции. Наконец, я заметил, что в пулах приложений (чистый тестовый сайт и основной сайт) для параметра "Загрузить профиль пользователя" было установлено значение по умолчанию "False". Я вернул это к истине, и проблема ушла.

1
  1. Создайте временную папку в %Systemroot% , а затем назовите ее Temp .
  2. Предоставьте полные разрешения для папки Temp учетной записи пользователя aspnet в .NET Framework 1.0 или учетной записи пользователя NETWORK SERVICE в .NET Framework 1.1.
  3. Щелкните правой кнопкой мыши Мой компьютер и выберите Свойства.
  4. На вкладке «Дополнительно» щелкните «Переменные среды».
  5. Выберите переменную TEMP в разделе Системные переменные и нажмите кнопку «Изменить».
  6. Введите %SystemRoot%\TEMP в поле Значение переменной и нажмите кнопку ОК.
  7. Повторите шаги 5 и 6 для редактирования переменной TMP. Нажмите ОК два раза.
  8. Нажмите Пуск, а затем нажмите Выполнить.
  9. Чтобы сбросить службы IIS, введите в командной строке iisreset .
1

Одно из имен папок в этом пути недопустимо: Framework <64>. Вы не можете использовать угловые скобки в имени папки, так как эти символы используются для перенаправления ввода / вывода. Эта папка существует? Возможно нет. Таким образом, что-то пытается создать и использовать эту папку и терпит неудачу с именем каталога неверно. Попробуйте посмотреть на конфигурацию того, что вы используете, что приводит к этой ошибке. В противном случае попробуйте найти в реестре эту строку и замените ее более разумным именем папки. Лучше всего сначала определить, какая программа пытается использовать этот путь, полностью удалить его и переустановить, убедившись, что он не пытается использовать неверное имя папки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .