37

私たちは得ています:

.NET ランタイム バージョン 2.0.50727.5448 - プロファイラーの共同作成に失敗しました

Web サーバーのイベント ビューアーにメッセージが表示され、次のメッセージが表示されます。

.NET ランタイム バージョン 4.0.30319.239 - CoCreateInstance 中にプロファイラーの読み込みに失敗しました。プロファイラー CLSID: '{d37a1b78-6dc5-46fc-bc31-f7c4d5a11c9c}'。HRESULT: 0x8007007e。プロセス ID (10 進数): 224。メッセージ ID: [0x2504]。

問題は、プロファイラーを使用しようとしていないことです。プロファイラーがサーバー上で実行またはインストールされておらず、コードがプロファイラーをどこにも参照していません...

他の人がこれらのメッセージに関連していると指摘したレジストリ キーを削除しようとしましたが、役に立ちませんでした。1 つは .Net2 を使用し、もう 1 つは 4 を使用して、2 つの Web サイト/Web アプリケーションでエラーが発生しているように見えますが、どこを見ればよいかわかりません。

4

9 に答える 9

28

多くの検索の後、誰かが以前に dotTrace をインストールしてからアンインストールしたことがわかりましたが、アンインストールはあまりきれいではなく、レジストリにエントリが散らばっていました。そのプロファイラーに。

dottrace に関連するすべてのレジストリ エントリと、表示された CSID を削除すると、イベント ビューアにエラーが表示されなくなりました。

このようなエントリを見つけるのに役立つスクリプトについては、この回答を参照してください: https://stackoverflow.com/a/36129656/361842

于 2012-04-05T08:12:38.673 に答える
20

ユーザー変数 (コントロール パネル > システム > システムの詳細設定 > 環境変数) から環境変数 COR_ENABLE_PROFILING を削除 (または 0 に設定) すると、問題が解決しました (MongoVUE を起動できませんでした)。

于 2014-03-13T09:02:44.480 に答える
12

このツールを使用できる場所を見つけるために、次の PowerShell コードを使用して、プロファイラーに関連する環境変数とレジストリ エントリを検出できます。

clear-host
if (-not (get-psdrive HKU)) {
    New-PSDrive HKU Registry HKEY_USERS
    Set-Location HKU:
}
"COR_ENABLE_PROFILING: $env:COR_ENABLE_PROFILING "
"COR_PROFILER: $env:COR_PROFILER"
$GUID = $env:COR_PROFILER
@(
    "HKLM:\Software\Classes\CLSID\$GUID",
    "HKLM:\SOFTWARE\Classes\Wow6432Node\CLSID\$GUID",
    "HKLM:\SOFTWARE\Wow6432Node\Classes\CLSID\$GUID",
    "HKU:\*\Software\Classes\CLSID\$GUID"
) |
    get-item  | 
    %{$p = $_.Name;Get-ItemProperty $_.PSPath ''} | 
    select @{N='Path';E={$p}}, '(default)'

get-itemproperty 'HKLM:\SYSTEM\CurrentControlSet\Services\*\' 'Environment' -ea SilentlyContinue | 
    %{
        $serviceName = $_.PSChildName
        $x = new-object PSObject -Property @{ServiceName=$serviceName}
        $_ | select -expand Environment | 
            %{if($_ -match '^(?<Name>[^=]+)(=)?(?<Value>.*)$'){$x | Add-Member -MemberType NoteProperty -Name $matches['Name'] -Value $matches['Value']}}
        $x
    } |
    ?{$_.COR_ENABLE_PROFILING -eq 1} | 
    ft ServiceName, COR_ENABLE_PROFILING, COR_PROFILER, NEWRELIC_INSTALL_PATH -AutoSize

将来的に他の人に役立つことを願っています。

于 2016-03-21T11:19:22.497 に答える
1

私たちにとって COR_ENABLE_PROFILING は複数の場所にありました

HKEY_LOCAL_MACHINE\SYSTEM\\Services\W3SVC および HKEY_LOCAL_MACHINE\SYSTEM\\Services\WAS

于 2015-08-07T19:49:47.700 に答える
0

Stackify Profiler も同じことを行います。:(、レジストリから削除するのは難しいと思います。

于 2016-10-06T15:31:32.300 に答える
0

アグネスからの回答に記載されていることを実行しても、うまくいきませんでした。私の場合、アプリケーションプールをアカウントに設定し、そのパスワードの有効期限が切れていました...

于 2018-08-29T19:32:08.583 に答える