問題タブ [gacutil]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
638 参照

c# - カスタム C# アセンブリを GAC に登録する

C# でいくつかのコードを書き、dll ファイルを作成しました。アプリケーションを別のシステムに配置すると、アプリケーションには .exe ファイルのほかに dll ファイルが必要になります。いくつかの dll ファイルが GAC にコピーされ、exe ファイルはもうファイルを必要としないことを知っています。また、dll が ActiveX または COM のタイプであるかどうかもわかっています。regsvr32 または regAsm を使用できます。しかし、自分のdllファイルをWindowsに登録する方法がわかりません。

0 投票する
1 に答える
260 参照

visual-studio-2012 - VS2012 を使用したコード分析 - 不足している Dll 参照 / GAC

プロジェクトでコード分析を実行しようとしていますが、多くの DLL 解決の問題に悩まされています。

gacutil を使用して GAC にいくつかの dll を追加し、いくつかの問題を解決しましたが、System.Net.Http バージョン 2.0.0.0 への参照に関するエラーが表示されます。

私のソリューションでは、この DLL への単一の参照はありません。実際、この DLL は私のマシンのどこにもありません。バージョン 1.0.0.0 または 4.0.0.0 だけです。

Web サイトの構成ファイルにこの dll のバインディング リダイレクトがありますが、明らかにコード分析プロセスはこれを使用していません。

これをどのように進めるのが最善かわかりません。バインディング リダイレクトを使用するようにコード分析を構成できますか? それとも、オンラインで DLL を探して GAC する必要がありますか?

アイデアをいただければ幸いです。

0 投票する
3 に答える
691 参照

c# - プログラムで TargetPath を取得する方法 + GacUtil の登録

私が必要なものは何?BizTalk Functoid と BizTalk パイプライン コンポーネントをいくつか作成しました。ただし、マッピング (Functoid) またはパイプライン (パイプライン コンポーネント) で使用する前に、特定のフォルダーにコピーする必要があります。

フォルダにコピーしても問題ありません。私が抱えている問題は、ターゲットパスを取得することです。アドインを書きました。そのため、メニュー項目をクリックできます。Functoid のプロジェクトも選択しました。そのため、メニュー項目をクリックすると。そのアセンブリの targetPath を取得する必要があります。「dll」ファイルを他のフォルダーにコピーする必要があります。

その「TargetFolder」をプログラムで取得するにはどうすればよいですか?

また、アセンブリをGACに登録するにはどうすればよいですか? 私が使用するバットファイルで

"gacutil /i 'アセンブリのパス' /f"

/f パラメーターを使用して、アセンブリを強制的に上書きします。C# では、それを強制することはできません。最初にアセンブリを削除して GAC に登録する必要がありますか?

0 投票する
1 に答える
1263 参照

sharepoint - ライブラリをアセンブリに読み込めません (GAC)

Sharepoint 2010サーバーを備えたWindowsサーバー2010でVisual Studio 2010を使用しています。同じサーバーで実行されている SharePoint インスタンスに Web パーツを展開しています。

私の新しい Web パーツは、カスタム ライブラリAE.Net.Mail. この Web パーツをデプロイすると、 のCould not load file or assembly...エラーが発生しAE.Net.Mailます。実行しgacutilましたが、アセンブリが に表示されませんC:\Windows\assembly。のサブディレクトリに表示されC:\Windows\Microsoft.NET\assemblyます。

これについてはよくわかりませんが、Sharepoint インスタンスを実行すると、C:\Windows\assembly. そのため、ライブラリを見つけることができません。私がこれを信じる理由は、私の Web パーツの名前が に存在するためC:\Windows\assemblyです。のサブディレクトリではなく、そこにキャッシュされていC:\Windows\Microsoft.NET\assemblyます。

AE.Net.Mail Version 1.6.0.0と互換性のあるバージョンを使用してい.NET 3.5ます。マシンに 4.0 が存在するにもかかわらず、Sharepoint サーバーが 3.5 を使用していると思います。nugetを使ってライブラリをインストールしようとしたところ、.NET 4.0が必要な最新版をインストールできなかったのでそう思います。エラーは、私のプロジェクトが 3.5 を使用していることを示しています。バージョン 1.6.0.0 は 3.5 と互換性があります

それで、あなたたちは何が起こっていると思いますか、そしてどうすれば私が入ることができると思いますAE.Net.MailC:\Windows\assembly? 何時間もこれに取り組んでいますが、理解できません (ドラッグ アンド ドロップは機能しません)。

みんなありがとう。:)

0 投票する
0 に答える
143 参照

windows-server-2008 - (一種の) 弱い名前の .dll を GAC にインストールする

一部のプログラムをあるサーバーから別のサーバーに移行する必要があります。その過程で、.dll が見つからないことがわかりました。元のサーバーでそれを追跡しました。それは、ファイル システム (ストレージ ディレクトリのように見え、何にもリンクされていない) と GAC の両方にありました。ストレージ ディレクトリから新しいサーバーに .dll を取得し、GACUtil を使用してインストールしようとしましたが、次のメッセージで失敗しました。

Failure adding assembly to cache: Attempt to install an assembly without a strong name

以前のサーバーに正常にインストールされていることは明らかなので、これは奇妙に思えます (2 つの .dll のバージョン番号は同じです)。ただし、この .dll のソース コードを持っていないため、GAC のバージョンが厳密な名前で再コンパイルされ、「ストレージ」のバージョンが更新されていない可能性があります。

考えられる回避策の 1 つは、.dll を手動でインストールすることです。C:\Windows\Microsoft .NET\assembly\ には .NET 4.0 で分離された GAC ディレクトリ構造があり、同じ public を使用して GAC_MSIL\[.dllname]\v###__[PublicKey]\ フォルダーを作成できます。キーを古いサーバーの GAC 実装として使用し、そこに .dll ファイルを配置します。ただし、.dll は間違いなく .NET 4.0 (または .NET 3.5 でさえ、私は思いません) でコンパイルされていません。または、それを機能させるにはどのような変更を加える必要がありますか?

ディレクトリ構造が公開されていないため、WindowsエクスプローラーGUIを備えた「古い」GACに何かを手動でインストールする方法がわかりません。この回答(https://stackoverflow.com/a/382318/1675729)は、手動インストールの同様の方法を試みることができる基本的な構造があることを示しているようです-これが機能する場合、誰かが私にいくつかの詳細情報を提供できますかその構造にアクセスする方法について?

もちろん、弱い名前の .dll を GAC にインストールする方法があれば、それが理想的です。この .dll は、特定の目的 (および名前) を持ち、1 つのプログラムによってのみ使用されるため、.dll 地獄の問題を引き起こすことはありません。ただし、これを行う方法はわかりません。また、GAC の目的とは完全に相反するように思われるため、情報が不足していても不思議ではありません。

私はありとあらゆる提案にオープンであり、喜んで私ができる情報をさらに提供します - ここで注意すべき重要なことはわかりません.

どうもありがとう!

0 投票する
1 に答える
767 参照

visual-studio-2010 - Visual Studio 2010 で古いバージョンの gacutil.exe を使用するように強制する (ビルド後のイベント)

WiXGAC に .dll とパブリッシャー ポリシーをインストールしようとしている単純なインストーラーを開発しています。

インストーラーを使用して GAC に .dll を正常に追加しました。しかし、Visual Studio の PostBuild イベントを使用して msbuild コマンドを実行したいと考えています。私がする必要があることの順序は次のとおりです。

  1. publisher policyVisual Studio の Post ビルド イベントを作成します。

  2. コマンドを実行するal /link:the.config /out:the.policy.dll /keyfile:thekey.snk /platform:x86

  3. 特定の GACUTIL を使用してポリシーを公開します。

私が正しければ、実行するgacutil -i Policy.1.0.TestLibrary.dllと、Visual Studio はこのポリシーを新しい GAC 1にインストールし、古いものを使用したい2

ビルド後のイベントで特定の gacutil を使用するように Visual Studio に指示するにはどうすればよいですか?

PostBuild イベントでこれを試しました:

しかし、得るThe command "...." exited with code 9009.

また、Library.v1.0.dll を古い GAC で発行してから、Library.v2.0.dll を新しい GAC にインストールした場合、v1.0 から v2.0 への発行者ポリシーを作成すると、お互いを見つける?

[1]: .Net Framework 4.0 以降で使用される GAC。
[2]: .Net Framework 3.5 以下で使用される GAC。

0 投票する
1 に答える
1256 参照

windows - インフラジスティックスをアンインストールできません。gacutil が見つかりません

インフラジスティックスをアンインストールしようとしていますが、アンインストールの最後に「Windows は gacutil を見つけることができません。名前を正しく入力したことを確認してから、もう一度やり直してください。」このパス「C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools」に移動すると、gacutil ファイルがそこにあります。これらについて何か考えはありますか?インフラジスティックスに固執していて、アンインストールできません。

0 投票する
1 に答える
2113 参照

c# - GAC アセンブリを使用するには権限が必要です

GACに2つのライブラリをインストールしたばかりで、メソッドのコンストラクターのみを呼び出す単純なアプリケーションでそれらを使用しようとしています:

アプリを実行しようとすると.exe、タスク マネージャー プロセスで確認できますが、読み込まれません。

実行可能ファイルの権限を昇格させると、シンプルなアプリがタスク マネージャーに表示され、 . しかし、GAC アセンブリを使用するアプリケーションに管理者権限を付与する必要があるのはなぜですか? それは私に起こるのは初めてです。

管理者権限を求めずに GAC アセンブリを使用するにはどうすればよいですか?

古いバージョンは読めますが、新しいバージョンは読めないので、GACの読み取り権限があると思います...

編集: *数分間滞在すると、が消費され、アプリケーションが実行されることに気付きました。.dllしかし、GAC にインストールしたアセンブリが必要になるたびに、非常に大きな遅延が発生します。*理由について何か考えはありますか?

編集:申し訳ありませんが、 UserControlLibrary.dll と呼ばれるため、どのライブラリであるかは言いませんでした。私はそれを開発しました。そして、私の古いプロジェクトのいくつかで使用されている私のライブラリの古いバージョンがあります。

新しいものを使用するために、古いバージョンのアセンブリから新しいアセンブリにリダイレクトするポリシーを公開しました。

注:古いバージョンを使用しても問題なく動作します。新しいものを使用しても機能しません (リダイレクト後)。

0 投票する
1 に答える
1091 参照

.net - アセンブリを .Net GAC に登録できません

アセンブリを GAC に登録する際に問題が発生しています。Win8 x64 を使用しています。.Net GAC に登録する必要があります。これは、アセンブリが c:\Windows\Microsoft.Net\assembly\GAC_MSIL に表示されることを意味します。gacutil コンソールに「アセンブリが正常にキャッシュに追加されました」というメッセージが表示されますが、物理的には表示されません。次の場所から gacutils を使用しようとしました。

これらすべての gacutils は、C:\Windows\assembly にあるキャッシュで動作します。

したがって、私の質問は、アセンブリを .Net GAC に登録するための gacutil.exe の場所です。