scvmm のアドインをプログラムしていますが、なぜこれが起こっているのかわかりません。
これは、コンパイルされていない add-in.dll です。
[AddIn("Backup HyperV VM")]
public class BackupHyperVVM : ActionAddInBase
{
public override bool CheckIfEnabledFor(IList<ContextObject> contextObjects)
{
if (contextObjects != null && contextObjects.Count > 0)
return true;
return false;
}
public override void PerformAction(IList<ContextObject> contextObjects)
{
}
private void execPSS(string param) //Execute a powershell script within the SCVMM -- need to make shure I run it on the right host
{
PowerShellContext.ExecuteScript<ServerConnection>(param,
(items, error) =>
{
//code to set server info here
if (error == null)
{
//on Success
}
else
{
//on Error
}
});
}
}
これが manifest.xml です。
<ConsoleAddIn
xmlns="urn:VMM-AddIns-v1-CTP"
Name="VMM Backup Add-In"
Version="0.0.1.0"
Author="..."
Description="This Add-In (once finished) provides the user with a GUI solution to backup and restore VMs from a Hyper-V host."
FolderName="BackupAddIn"
TrustLevel="Full">
<ActionAddIn
Name="Backup VMs Add-In"
Contexts="Cluster"
AssemblyName="add-in.dll"
ShowInContextMenu = "True"
ActionType="Code"
Icon="Ico.ico">
<ButtonLabel>
Backup VM
</ButtonLabel>
</ActionAddIn>
</ConsoleAddIn>
ファイルを圧縮してアドインをロードしようとすると、次のエラーが表示されます (ドイツ語から翻訳しました)。
アドイン コンポーネント「バックアップ VM アドイン」がアセンブリ「アドイン」に見つかりません。考えられる理由: 1. アドインの属性「名前」が、アドイン クラスの属性「AddIn」で定義された名前と一致していません。2. アドイン クラスはパブリックではありません。
助けてくれてありがとう..これを解決する方法がわかりません。ドキュメントでさえ私を助けることができませんでした。