none
Исключение в w3wp.exe - IIS RRS feed

  • Вопрос

  • Здравствуйте! В моем asp-проекте имеется word-шаблон, в который по нажатию на кнопку я подставляю некоторые данные, и затем сохраняю этот документ с новым именем. Затем я этот новый документ скачиваю через браузер. Так вот, когда я свой проект запускаю из Visual Studio, все прекрасно работает, но после того, как я его опубликовываю и заливаю на сервер IIS, этот функционал перестает работать. Вываливается сообщение: "Необработанное исключение win32 произошло в "w3wp.exe"". Я почти уверен, что ошибка в строке кода, в которой происходит сохранение документа под новым именем с помощью метода saveAs(). Мне кажется для этой операции не хватает прав доступа к каталогу, в который должен сохраниться новый документ. Я не очень разбираюсь в данной области, поэтому не знаю кому и где нужно выдать права доступа. Подразумеваю, что нужно открыть доступ именно к этому каталогу, но не уверен...

    18 ноября 2015 г. 8:05

Ответы

Все ответы

  • Добрый день,

    верно - не хватает прав. Посмотрите под какой учетной записью у вас работает w3wp и дайте ей полные права на каталог.

    • Помечено в качестве ответа SentMem 26 ноября 2015 г. 6:51
    18 ноября 2015 г. 8:38
  • Подскажите пожалуйста, как это можно сделать. Наверняка не через диспетчер задач, в нем не нашел такой процесс.
    Хотя вроде нашел. Работает по учетной записью "СИСТЕМА". Но ей права выданы.

    • Изменено SentMem 18 ноября 2015 г. 9:12
    18 ноября 2015 г. 8:59
  • Посмотрите вот тут например.

    Сделаем содержимое сообщества лучше, вместе!

    • Помечено в качестве ответа SentMem 26 ноября 2015 г. 6:50
    18 ноября 2015 г. 9:16
    Модератор
  • Если с правами все нормально, тогда присоединяйте Visual Studio к процессу w3wp и отлаживайте код.
    18 ноября 2015 г. 9:35
  • Не выходит присоединить. Когда выбираю этот процесс, кнопка "присоединиться" становится неактивной. Попробую еще пул запускать от учетной записи администратора. Не вышло, при запуске пула ошибку выдает.

    • Изменено SentMem 18 ноября 2015 г. 10:27
    18 ноября 2015 г. 10:20
  • Надеюсь вы VS  справами админа запускаете. Какую именно ошибку выдаёт?

    Сделаем содержимое сообщества лучше, вместе!

    18 ноября 2015 г. 19:06
    Модератор
  • Да, VS запускается с правами администратора. Удалось запустить от учетной записи администратора. Но ошибка осталась. Выходит, это никак не связано с правами на доступ к каталогу или чему-то еще. Когда эта ошибка вылетает, он предлагает отладку с использованием VS (там 2010 установлен). После того как соглашаюсь, он начинает вроде бы отладку, но на каком-то этапе исключение выдает. Я не могу скриншоты прикрепить, так как учетная запись не подтверждена и я не могу ее никак подтвердить.

    Во время отладки машинного кода он говорит про исключение в KernelBase.dll.Мне не хватает знаний для того, чтобы более точно определить причину появления ошибки.

    19 ноября 2015 г. 5:22
  • Добрый день,

    надо полный трэйс-лог. Скрины можете выложить на внешние ресурсы.

    19 ноября 2015 г. 5:59
  • А каким образом его можно получить? Может есть статься какая-нибудь с инструкциями на примете?

    Я обернул код в блок try catch. В итоге получил вот это (причем в моем word-документе):

    System.Threading.ThreadAbortException: Поток находился в процессе прерывания.
       в System.Threading.Thread.AbortInternal()
       в System.Threading.Thread.Abort(Object stateInfo)
       в System.Web.HttpResponse.AbortCurrentThread()
       в RAB_POJ.v2.ViewFireAll.ViewFireAll.Button2_Click(Object sender, EventArgs e)
    

    Так выглядит блок catch:

                catch (Exception ex)
                {
                    Response.Clear();
                    Response.Write(ex.ToString());
                }

    20 ноября 2015 г. 9:31
  • Так вряд ли получится что либо получить, используйте более продвинутое логирование на сервере. Возможно удастся что-то получить. Ну можно подтянуть тяжёлую артилерию если первый способ ничего не даст.

    Сделаем содержимое сообщества лучше, вместе!

    21 ноября 2015 г. 8:29
    Модератор
  • Хм, все заработало. Видимо помог запуск пула от имени администратора. Странно очень, сразу вроде не помогло, а сейчас работает. Большое всем спасибо за помощь! Очень хороший форум!
    25 ноября 2015 г. 8:05
  • Хм, все заработало. Видимо помог запуск пула от имени администратора. Странно очень, сразу вроде не помогло, а сейчас работает. Большое всем спасибо за помощь! Очень хороший форум!

    7 бед - 1 ресет. После смены учетки надо пулы перезапускать.
    25 ноября 2015 г. 10:19