regasm.exeを使用して.NETアセンブリを登録しました。すべては問題ありませんが、私には1つの問題があります。 管理者ユーザーアセンブリから登録を実行すると、このユーザーのみが表示されます。 登録:すべてのユーザーの.NETアセンブリの登録
regasm.exe "C:\Assembly Path\MyAsm.dll" /codebase
どのようにしてすべてのユーザーにアセンブリを登録できますか?
regasm.exeを使用して.NETアセンブリを登録しました。すべては問題ありませんが、私には1つの問題があります。 管理者ユーザーアセンブリから登録を実行すると、このユーザーのみが表示されます。 登録:すべてのユーザーの.NETアセンブリの登録
regasm.exe "C:\Assembly Path\MyAsm.dll" /codebase
どのようにしてすべてのユーザーにアセンブリを登録できますか?
@FrédéricHamidiに記載のとおり、.netアセンブリにはgacutil
を使用する必要があります。また、コードでこれを行うことができます(昇格を必要とし、また、DLLを更新するために使用することができます):あなたがManaged COM
DLLを持っている場合は
var publish = new System.EnterpriseServices.Internal.Publish();
publish.GacInstall("fullPathToDll");
、あなたがregasm.exe
の正しいバージョン(64ビットまたは32ビット)を使用していることを確認してください あなたがUnmanaged COM
DLLを持っている場合は、
(その場合には、この質問はthat questionの重複かもしれません)を使用regsvr32
質問はCOM DLLを登録することにあるようですが、必ずしも.NETアセンブリである必要はありません。また、クライアントマシンでGacUtil(またはそのAPI)を使用しないでください。それは開発ツールです。 – CodeCaster
@コードキャスターそれでは、質問とタグはどちらも間違っています... –
それはその場合に当てはまる最初の質問ではありません。 OPは明らかに誤っており、この答えは私が恐れている彼らを助けるつもりはありません。 – CodeCaster
'regasm'は、GACとは何の関係もありません。それはあなたのアセンブリによって公開されたCOMインタフェースだけを登録します。あなたはおそらく 'gacutil'を探しています。 –
@FrédéricHamidiこれは私のせいです。おそらくregasm.exeを意味します。 – Gleb
はい、@Frederic Hamidiに同意してください。 https://msdn.microsoft.com/en-us/library/ex0ss12c%28v=1.0%29.aspx – Roshan