質問

Vista で DLL をアセンブリ フォルダーにドラッグ アンド ドロップすると、「アクセスが拒否されました:」というエラーが表示されます。mydll.dll」。エラー メッセージを回避して dll を gac に追加するにはどうすればよいですか?

役に立ちましたか?

解決

私の推測では、管理者としてこれを行う必要があると思います...UACを無効にするか、gacutil.exeを使用してアセンブリを追加してみてください。

他のヒント

使用 ルナス 実行するコマンド ガクティル DLL を GAC に登録するローカル管理者権限を持つユーザーとして。

Vista を使用しているときに、Windows フォルダーに gacutil.exe が見つからない場合があります。vistaの「ロゴプログラムなんとか」のせいで、これは含まれていません。Windows インストーラーを使用してアセンブリを gac に追加してみてください。これが推奨される方法です。

そして、この伝統的な鬼のことわざを決して忘れないでください。「ビ・シクティル・ギット・カイ・コイ」。

これは、gacutil.exe を使用して行うことができます。それは次の場所にあります。

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

ただし、.NET SDK (.Net Redistributible だけでなく) をインストールした場合にのみ存在します。ただし、開発者のマシンからコピーすることはできます。

アセンブリ (dll) を GAC に常駐させる場合は、そのアセンブリにも厳密な名前を付ける必要があります。

http://msdn.microsoft.com/en-us/library/wd40t7ad(VS.80).aspx

コマンドラインを使用して、次の手順を実行します。

Visual Studioコマンドプロンプトを開く

まず、Visual Studio コマンド プロンプトを開きます (Visual Studio 2008 の場合、パスは [プログラム] --> Visual Studio 2008 --> Visual Studio Tools --> Visual Studio 2008 Command Prompt です)。次の手順で説明するすべてのファイルが Visual Studio に作成されます。 Studio 2008 コマンド プロンプト パス。私の場合は、C:\Program Files\Microsoft Visual Studio 9.0\VC です。

  1. キーファイルSN -K keypair.snkを生成します
  2. アセンブリIldasm someassembly.dll /out:someassembly.ilのMSILを取得します
  3. ren someassembly.dll someassembly.dll.origの場合に備えて、元のアセンブリの名前を変更します
  4. MSIL OutputとKeyFile Ilasm SomeasSembly.IL /DLL /Key=Keypair.snkから新しいアセンブリを構築する
  5. dllをgac gacutil -i someassembly.dllにインストールします
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top