TIPS: stsadm コマンドの拡張

SharePoint の管理ユーティリティである Stsadm.exe コマンドは拡張することができます。
具体的には、下記のようにコマンドを実行することができるようになります。

stsadm.exe -o MyCustomCommand -Name1 Value1 -Name2 Value2

手順を簡単に説明すると、
(1) ISPStsadmCommand インターフェースを継承したクラスを作成し、インターフェースのメソッド (GetHelpMessage, Run) を実装し、 DLL にコンパイルします。

(2) dll を参照するための XML ファイルを作成し、CONFIG フォルダ (C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\CONFIG) 以下に配置します。

Xml の例

<commands>
    <command 
        name="MyCustomCommand" 
        class="MyAssembly, 
        Version=1.0.0.0, 
        Culture=neutral, 
        PublicKeyToken=value"/>
    <!-- MyAssembly は、MyAssembly.dll にコンパイルした場合 -->
</commands>

この時、ドツボにはまる注意点として、
ISPStsadmCommand を継承するクラスは、内部クラスを作ってしまうと、SSP 関連のエラーが多発します。
なるべく内部クラスは作らないようにしましょう。

コメントを残す