問題タブ [gac]
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.
assemblies - CLR は GAC からアセンブリのバインドを解放しますか?
GAC からアセンブリを取得するサービスが複数あります。これらのサービスのいずれかをインストールすると、さまざまなサービスによって共有される新しいアセンブリで GAC が更新され、新しいポリシー ファイルが GAC に挿入されるため、以前のすべてのバージョンが新しいアセンブリを検索します。すべてのサービスは、サービスを再起動せずにポリシーを取得し、新しいアセンブリを完全に使用します。このリリースをロールバックし、アセンブリとポリシーをアンインストールして、新しいアセンブリのインストールに関連するサービスを再起動すると、問題と疑問が生じます。明らかに、再起動されたサービスは、GAC 内の以前のバージョンのアセンブリを取得します。ただし、このアセンブリを使用するサーバー上で実行されている他のサービスは、ポリシー ファイルから新しいバージョンのアセンブリにバインドされたままです。私の質問は次のとおりです。
バインドはキャッシュのようなもので、最終的には解放されて古いアセンブリに戻りますか? または、サービスが再起動するまでバインドされたままになりますか?
再起動が必要な場合は、このアセンブリを使用するすべてのサービスを見つけてそれらのサービスを再起動するか、サーバー自体を再起動して、GAC から削除されたアセンブリへのブラインドを削除しますか?
.net - 誰が共有.NETライブラリをGACにインストールする必要がありますか?ライブラリを提供するフレームワーク?それを使用する各アプリケーション?両方?
これはおそらく哲学的な問題です。
ある種のフレームワークがあり、フレームワークの特定の側面を簡単に使用できるようにする.NETライブラリを提供することにしたとします。フレームワークを使用する各アプリケーションがライブラリのコピーをローカルに保持することを望まないので、GACにそれを置きたいと思います(それが意味する可能性のあるすべてのメンテナンスの問題があっても)。
フレームワークにライブラリをGACにインストールさせるのは非常に簡単なので、各アプリでインストールする必要はありません。ただし、ライブラリの新しいバージョンを作成するときは、フレームワークインストーラーで古いライブラリと新しいライブラリの両方を実行して、一部のアプリケーションで使用されている可能性のある古いライブラリがアップグレードによって削除されないようにする必要があります。
ただし、各アプリケーションがライブラリをGACにインストールする場合は、Windowsインストーラーの参照カウントが開始され、アップグレードシナリオで古いライブラリを持ち歩くことをフレームワークが心配する必要がなくなります。使用中のライブラリは、最後のWindowsインストーラー参照がなくなった場合にのみアンインストールされます。
明らかに、各アプリケーションは、アプリケーションのビルド時にライブラリにアクセスでき、インストーラーに簡単に含めることができます。
誰かが一方と他方の意見/視点/経験を持っていますか?これは厳密には望ましいタイプの質問ではないことを理解していますが(ディスカッションを招くため)、短いディスカッションが役立つと思います。
c# - System.Windowsアセンブリが見つかりません
これは私たちが得るエラーです:
エラー1タイプ'System.Windows.Point'が、参照されていないアセンブリで定義されています。アセンブリ'System.Windows、Version = 2.0.5.0、Culture = neutral、PublicKeyToken=7cec85d7bea7798e'への参照を追加する必要があります。C:\ PacMan \ PacMan \ PacMan \ PacManTests \ UnitTest1.cs 65 13 PacManTests
System.Windowsアセンブリを見つけることができない単体テストプロジェクトでこのエラーが発生しますが、メインプロジェクトはアセンブリを見つけて正常に実行できます。
この問題を解決するためにSystem.Windowsをどこで、どのように参照できるかについて、誰かが意見やアドバイスを持っていますか?
.net - .NETでGACではなくローカルフォルダ内のアセンブリを最初に検索する方法は?
.NETランタイムは、常に最初にGACで参照されたアセンブリを検索し、次にローカルフォルダーで参照されるアセンブリを検索することを理解しています。この順序を逆にする設定がWeb.Configにありますか?
asp.net-mvc - ASP.NET MVC:同じサーバーにV1とBetaを展開するBin
いくつかのアプリを実行しているWebサーバーにASP.NETMVCベータ版があります。私の最新のアプリは完成に近づいており、ASP.NETMVCのバージョン1を使用しています。
私のアイデアは、V1アセンブリをビン展開し、ベータ版をインストールしたままにして、デフォルトで使用されるようにすることでした。このアイデアは、binフォルダーを無視し、GAC(両方ともバージョン1.0.0.0)から取得するため、機能しません。代わりに、ベータMVC dllを、ベータを使用してビルドされたアプリケーションのbinディレクトリにコピーし、ベータMVCをアンインストールして、GACからdllを削除しました。
次に、binディレクトリにBetadllがあるBetaMVCを使用しているページに移動し、GACでsystem.web.mvcdllが見つからないというエラーが発生しました。もちろんできませんでした。削除してbinsフォルダーに配置しました。
だから私は少し困惑しています。
WebアプリケーションにGACではなくbinディレクトリを検索させる方法はありますか?
c# - オープンソース プロジェクト用に厳密な名前のキー ファイルをセキュリティで保護する必要がありますか?
テンプレートでアセンブリを参照しやすくするために、コンパイル済みアセンブリをオープンソース プロジェクトから GAC にインストールするスターター キットを作成しています。それらは GAC に入るため、署名する必要があります。
キー ファイルをパスワードで保護してセキュリティで保護する必要がありますか? または、キー ファイルを開いたままにして、ファイルをソース管理に含めても問題ありませんか?
c# - FxCop と GAC の狂気
パターンとプラクティス、エンタープライズ ライブラリ データ 2.0.0.0 に依存するプロジェクトを分析しようとするときに FxCop を使用する - FxCop は、分析対象のアプリケーション dll が準拠していたにもかかわらず、「アセンブリ参照の検索」ができないと不平を言いますこのバージョンとそのGACにあります。GAC を参照して同じアセンブリを選択しようとすると (バージョンと公開キー トークンを確認しました)、FxCop で「開く」ことができません。アプリケーションは実行に成功し、間違いなく問題の dll を使用します。
OS: Vista と Windows XP の両方で見られます。バージョン: Visual Studio 2005 および 2008。FxCop 1.36 アプリケーションは VS2005 for .NET 2.0 に準拠しています。
Reflector でアプリケーション dll を参照しようとすると、同じ問題が発生します。
明らかに、これがコンパイル対象のアセンブリと同じバージョンであるとは考えていません。誰かが理由を知っていますか?解決策の提案はありますか? 私は何が欠けていますか?
asp.net-mvc - System.Web.Mvc が GAC に読み込まれている場合、.NET MVC は機能しますか?
System.Web.Mvc を GAC に配置することは許可されていますか? 次のように許可: 機能しますか?
私はこれを行いましたが、すべてのプロジェクトで System.Web.Mvc.ViewPage からの継承に問題があります...
編集 これがあなたを怖がらせないことを願っています:
Microsoft (R) Visual Basic Compiler バージョン 9.0.30729.1 Copyright (c) Microsoft Corporation. 全著作権所有。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(1): エラー BC30456: 'タイトル' は 'ASP.views_home_list_aspx' のメンバーではありません。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(1): エラー BC30456: 'InitializeCulture' は 'ASP.views_home_list_aspx' のメンバーではありません。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(1): エラー BC30456: 'MasterPageFile' は 'ASP.views_home_list_aspx' のメンバーではありません。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(7): エラー BC30456: 'AddContentTemplate' は 'ASP.views_home_list_aspx' のメンバーではありません。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(11): エラー BC30456: 'AddContentTemplate' は 'ASP.views_home_list_aspx' のメンバーではありません。
C:\Bugging\VandaagLijst\VandaagLijst\Views\home\List.aspx(13): エラー BC30451: 名前 'Model' が宣言されていません。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(42): エラー BC30198: ')' が予想されます。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(43): エラー BC30154: クラス 'views_home_list_aspx' は 'ReadOnly Property IsReusable ( ) インターフェイス 'System.Web.IHttpHandler' のブール値として。実装するプロパティには、一致する 'ReadOnly' または 'WriteOnly' 指定子が必要です。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(43): エラー BC30149: クラス 'views_home_list_aspx' は 'Sub ProcessRequest(context) を実装する必要がありますインターフェイス 'System.Web.IHttpHandler' の HttpContext として)。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(55): エラー BC30311: 型 'ASP.views_home_list_aspx' の値を変換できません「System.Web.Mvc.ViewPage」に。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(57): エラー BC30456: 'ReadStringResource' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(61): エラー BC30456: 'GetWrappedFileDependencies' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(68): エラー BC30456: 'Context' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(74): エラー BC30456: 'Context' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(193): エラー BC30284: サブ 'FrameworkInitialize' は 'Overrides' と宣言できません。基本クラスのサブをオーバーライドしません。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(195): エラー BC30456: 'SetStringResourcePointer' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(197): エラー BC30456: 'AddWrappedFileDependencies' は 'ASP のメンバーではありません。 views_home_list_aspx'.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(201): エラー BC30284: 関数 'GetTypeHashCode' は 'Overrides' と宣言できません。基本クラスの関数をオーバーライドしません。
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\24f69041\8efa8a35\App_Web_p7uswgud.2.vb(206): エラー BC30284: サブ 'ProcessRequest' は 'Overrides' と宣言できません。基本クラスのサブをオーバーライドしません。
.net - Visual Studio の [参照の追加] ダイアログの .NET タブに GAC の内容が表示されないのはなぜですか?
の複製:参照の追加の .NET タブに表示するアセンブリの取得
そのため、私は Visual C# 2008 Express Edition を使用しており、「参照の追加」ダイアログの .NET タブに GAC の内容がリストされているという私の仮定が間違っていることがわかったので、少し回り道をしました。 .
私のプロジェクトから参照したいアセンブリは GAC でのみ利用可能だったので、これは私にとって少し問題でした。(これは、XNA 2.0 再配布から取得した Microsoft.XNA.Framework v2.0 であり、私が確認した限りでは、GAC にのみインストールされていました)。
.csproj ファイルで Microsoft.XNA.Framework への参照を手動で設定し、キャッシュから dll のコピーを取得することで、問題を回避しました。次に、DLL 用のディレクトリを作成し、それをレジストリ内の Visual Studio のアセンブリ ディレクトリのリストに追加すると、出来上がりです! .NET タブで確認できました。
これはすべて私には少しばかげているように思えますが、私の最初の仮定 (.NET タブに GAC の内容が表示される) がそれほど不合理だったり、それほど一般的ではなかったりするとは思いません。私より詳しい人教えてください
- GAC の内容が表示されないのはなぜですか? ドキュメントにはそうではないと書かれていますが、正当な理由はありますか?
- 実際に GAC の内容全体を一覧表示する方法はありますか? 私がどこかで見逃したチェックボックス?
どんな情報でも大歓迎です。
powershell - PowerShell を使用してグローバル アセンブリ キャッシュ (GAC) の内容を表示する
PowerShell を使用して GAC の内容を表示する方法はありますか?