Нуждаюсь в помощи возвращая NGen в рабочее состояние

На всякий случай, если кто-нибудь на моем месте ...

const { remote } = require('webdriverio');

(async () => {
    const browser = await remote({
        logLevel: 'trace',
        capabilities: {
            browserName: 'chrome'
        }
    })

    await browser.url('https://duckduckgo.com/')

    const inputElem = await browser.$('#search_form_input_homepage')
    await inputElem.setValue('WebdriverIO')

    const submitBtn = await browser.$('#search_button_homepage')
    await submitBtn.click()

    console.log(await browser.getTitle()) // outputs: "Title is: WebdriverIO (Software) at DuckDuckGo"

    await browser.deleteSession()
})().catch((e) => console.error(e))
7
задан Leon Bambrick 7 February 2009 в 23:13
поделиться

3 ответа

В ответе на эту часть вопроса:

"Что вызывает эти катастрофические отказы?"

Существует два файла журнала, которые могут помочь ответить на это:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.log
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen_service.log

(А также обычный журнал приложения, хотя это менее полезно),

В ответе на:

"Какие файлы находятся в очереди, чтобы быть сгенерированными?"

Обычный ответ - то, что это видно путем выполнения:

ngen.exe display

(Хотя в моем случае это только возвращается

NGEN Roots:    
Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))

)

3
ответ дан 7 December 2019 в 07:51
поделиться

От этого:

Сервис Оптимизации Времени выполнения.NET пытается повторить компиляцию блоков, когда он сталкивается с тем, чему он верит, случайные ошибки; примеры включают ошибки RPC, ошибки из памяти и т.д. Однако после того, как это попыталось скомпилировать тот же блок 20 раз и все еще не удалось сделать так, это производит сообщение выше и закрывается. Я вижу, что Вы уже попытались удалить Платформу.NET 2.0 от Вашей машины и переустановить ее, но что у Вас все еще есть эта ошибка. Я предполагаю, что попытка восстановить установку не помогает также. Можно ли возможно попытаться выполнить "ngen.exe ExecuteQueuedItems", сопровождаемый "Обновлением ngen.exe" от %WINDIR %\Microsoft.NET\Framework\v2.0.50727 \? Это попытается скомпилировать все блоки, которые еще не имеют никаких/актуальных 32-разрядных изображений NGen синхронно, не проходя сервис оптимизации. После того как команда обновления завершается, можно ли еще раз попытаться запустить сервис и проверить, чтобы видеть, получаете ли Вы все еще то же сообщение в системном журнале? Если эта проблема не будет характерна для сервиса, то я ожидаю, что Вы будете видеть ошибки компиляции в выводе командной строки также.

2
ответ дан 7 December 2019 в 07:51
поделиться

У меня была такая же проблема (установка Asp MVC 1.0). В поисках ответа я заметил блог Haacked , где были объяснены некоторые причины. Потратив 2 часа на попытки решить эту проблему, я был так разочарован, что использовал

ngen /delete *

. Это сработало. Но я не уверен, что это не приведет к небольшой катастрофе; /

Может быть, это поможет ..

2
ответ дан 7 December 2019 в 07:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: