2

いくつかのアセンブリのビルド前イベントでRegAsmを呼び出すC++プロジェクトがあります。ビルド前のイベントは次のエラーで失敗します。

Error 1 error RA0000 : An error occurred while writing the registration
information to the registry. You must have administrative credentials to perform 
 this task. Contact your system administrator for assistance.   RegAsm  

BuildLog.htmを確認すると、ビルド前のイベントに次のコマンドがあります。

C:\Windows\Microsoft.NET\Framework\v2.0.50727\regasm 
    ../../../CommonLib/release/Services.dll 
    /tlb:c:\TFS\Console\Solution\Bridge\Services.tlb

そのため、コマンドをコピーしてVisual Studio 2010コマンドプロンプトで管理者として実行しましたが、同じエラーが発生しました。

私は最近までこのプロジェクトをうまく構築することができました。 この問題の原因がわからない。どんな助けでも大歓迎です。

私はこのコンピューターの管理者グループの一員であり、UACをオフにしました。

4

5 に答える 5

2

右クリックしてcmdを開き、「管理者として実行」

于 2013-01-10T17:39:10.537 に答える
1

ファイルが別のプロセスによってロックされていないか確認してください。Sysinternals Process Monitor ツールを使用して、ファイルがロックされていないこと、または別のプロセスによって使用されていないことを確認できます。これは、Filemon と Regmon という 2 つのレガシー Sysinternals ユーティリティの機能を組み合わせたものです。

また、 StackOverflowでこの同様の質問を確認してください。

于 2012-07-08T23:28:44.623 に答える
1

相互投稿で申し訳ありませんが、これは最初にGoogleに出てきたので、回答を最新の状態に保ちます.

私はここで同じ問題を抱えていましたが、反対のターゲット プラットフォームを使用していました。x64 の代わりに x86 バージョンの regasm を実行して解決しました。それはあなたにとって逆にうまくいくかもしれませんか?その代わりに

C:\Windows\Microsoft.NET\Framework\v2.0.50727>regasm.exe

で x64 ビット バージョンを使用する

C:\Windows\Microsoft.NET\Framework64\v2.0.50727>regasm.exe
于 2016-05-17T14:59:59.543 に答える