2016-05-23 20 views
0

In meiner Anwendung installiere ich Baugruppen von Drittanbietern in GAC. Diese Third-Party-Assemblies sind sehr große DLL-Dateien, so dass ich sie nicht im Ordner "Application Bin" bereitstellen möchte, um Speicherplatz zu sparen.So überschreiben Sie Baugruppen in GAC

Jetzt erhalte ich einen Patch auf einer dieser Baugruppen, mit genau der gleichen Assembly-Version wie zuvor. Ich müsste dann die Assemblys in GAC überschreiben. Wie kann ich das machen?

Einige Benutzer haben möglicherweise viele verschiedene Versionen meiner Anwendung installiert, ich kann nicht einfach eine neue Version mit der gepatchten Assembly veröffentlichen und sie bitten, alle diese alten Versionen zu deinstallieren, denn das wäre sehr mühsam.

Ich kann auch nicht GacUtil verwenden, da, wie oben erwähnt, würde ich diese Baugruppen auf Client-Rechner, ohne Standard-Debugging-Tools wie VS bereitstellen müssen 2015

Was ich denke ich, dass ich die genaue fehlerhafte außer Kraft setzen möchten Assemblys in GAC über eine Befehlszeile oder ein Installationsprogramm. Wie kann ich das machen?

+2

http://Stackoverflow.com/a/2611435/17034 –

+0

@HansPassant, einen Grund, warum Sie dies nicht als Antwort posten? – Graviton

+0

Nun, sicher, das habe ich schon getan. Wenn Sie es nicht verwenden können, um eine Antwort auf Ihre Frage selbst zu posten, dann muss ich mich entschuldigen. –

Antwort

0

Der einfachste Weg, wie ich herausgefunden habe, ist das Drag & Drop der DLLs im entsprechenden GAC-Ordner. Ich habe unter Windows 7 und Windows 10 getestet, und es funktioniert!

Auch kann man eine Wrapper-Klasse wie in this answer schreiben.