2011-01-07 12 views
0

Ich entwickle ein Powershell-Snapin, das von PSSnapIn abgeleitet ist.So platzieren Sie die PowerShell-Hilfedatei in GAC

Wenn ich manuell meine snapin.dll-help.xml Datei auf die GAC get-help auf meinem Befehl kopiert, funktioniert wie erwartet.

So ist es möglich, InstallUtil zu erhalten, um die XML-Datei sowie die DLL bei der Installation zu kopieren?

Antwort

3

Wenn Sie PS V2 verwenden können, würde ich vorschlagen, ein PowerShell V2-Modul zu erstellen. Dies macht die Verwendung von installutil überflüssig. Sie können mit Xcopy bereitstellen, wenn Sie möchten. Sie müssen nur ein Modulmanifest erstellen. Sie können Ihre Hilfedatei auch in das Verzeichnis des Moduls einfügen, das Sie erstellen, und es wird funktionieren. Sie verwenden immer noch die PSSnapin-Basisklasse, aber wie Sie es packen, ist anders. Dies war eine der wichtigsten Verbesserungen von V1 auf V2. Führen Sie in PowerShell den Befehl aus, um Informationen zu Modulen zu erhalten.

PS> help about_module 
+1

Ich werde dies überprüfen. Ich habe es geschafft, es mit Installutil arbeiten zu lassen, indem ich eine Setup-Klasse hinzufügte, die Hilfedatei als eine Ressource einbettte und sie in der OnAfterInstall-Methode aufschrieb. –

+0

Ich habe Module ein wenig erforscht. Ein Modul muss entweder gemeinsam oder persönlich installiert sein, und Sie müssen den Modulladepfad zur PSModulePath-Umgebungsvariablen hinzufügen. Um den Pfad hinzuzufügen und den Ordner zu erstellen, in dem die Dateien abgelegt werden, würden Sie mit einem Installationsprogramm einer Art beginnen (könnte ein Powershell-Skript sein). Die Frage ist also, ist es besser, ein Installationsprogramm im Vergleich zu einer .bat-Datei mit installutil zu verwenden? Ich denke, dass der .bat-Ansatz in vielen Szenarien vorzuziehen ist. –

+0

Die Module sollen wie die Anwendungsdaten am Benutzer- oder Maschinenstandort installiert werden. PowerShell ruft Hilfedateien von dem Speicherort ab, von dem das Modul importiert wurde. – JasonMArcher

Verwandte Themen