2010-07-06 5 views
0

Вот сценарий:ASP.NET: Parser сообщение об ошибке с Vbc.exe

У нас есть ASP.NET работает система управления контентом работает на сервере, который построен третьей стороной и поэтому, к сожалению, должен считаться «черным ящиком» для целей этого вопроса. Я не знаю, как это работает. Его Windows 2008 с IIS 7.

В течение нескольких недель он будет работать нормально, а потом вдруг начнет возвращать ошибку .NET Parser всякий раз, когда кто-то пытается получить доступ к странице:

Parser Error 
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. 

Parser Error Message: Cannot execute a program. The command being executed was 
"C:\Windows\Microsoft.NET\Framework\v2.0.50727\vbc.exe" /noconfig 
    @"C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\7082fc73\4a06ea64\iscamrh7.cmdline". 

Source Error: 
Line 69:  <!--<%@ Register Src="/web/ContentLibrary/Section/section125.ascx" TagName="section125" TagPrefix="uc1" %><uc1:section125 ID="section125" runat="server" />--> 
Line 70:  <%If useAltStyles Then %> 
Line 71:  <%@ Register Src="/web/Tags/tag46.ascx" TagName="tag46_14" TagPrefix="uc14" %><uc14:tag46_14 ID="tag46_14" runat="server" /> 
Line 72:  <%Else %> 
Line 73:  <%@ Register Src="/web/Tags/tag41.ascx" TagName="tag41_16" TagPrefix="uc16" %><uc16:tag41_16 ID="tag41_16" runat="server" /> 

сообщение упоминает, что оно «невозможно выполнить» vbc.exe, который, как мне известно, связан с компиляцией aspx-страниц. И из исходных строк, которые он цитирует, это происходит, когда он пытается установить @Register пользовательские элементы управления на странице.

Есть ли у кого-нибудь какие-либо намеки или догадки о том, что может быть причиной этого? Например. это то, что происходит, когда на сервере мало ресурсов?

ответ

1

Для дальнейшего использования выяснилось, что нехватка памяти из-за утечки памяти в COM-компоненте, который использовался сайтом.

Установка предела памяти в настройках повторного использования пула приложений оказалась временной фиксацией до тех пор, пока утечка памяти не будет отсортирована.

+0

Спасибо за продолжение. – JamesEggers

0

Я не знаю, вызвано ли копирование/вставка или усекается сообщением об исключении, но когда я копирую свой код aspx на новой странице, я сначала получаю ошибку времени компиляции, которую мой «If» должен прекратить действие «End If», но я не вижу, как это может вызвать сообщение. (Проверено на ASP.NET сервере разработки, VS2010 в ASP.NET 2.0 веб-проекта)

Вторая вещь, которая поражает меня в том, что линии

<!--<%@ Register Src="/web/ContentLibrary/Section/section125.ascx" TagName="section125" TagPrefix="uc1" %><uc1:section125 ID="section125" runat="server" />-->

хотя комментировал все еще нуждается в section125.ascx контроль существовать. Может быть, ошибка возникает внутри элемента управления section125.ascx.

Можете ли вы попытаться удалить прокомментированное заявление @Register?

+0

Нет, ничего подобного. Это страницы, которые работают нормально, а затем внезапно перестают работать из-за некоторых условий на сервере. End-if не существует, потому что сообщение об ошибке показывает только подмножество кода. – codeulike