本文整理汇总了C#中IMainForm.LoadPlugin方法的典型用法代码示例。如果您正苦于以下问题:C# IMainForm.LoadPlugin方法的具体用法?C# IMainForm.LoadPlugin怎么用?C# IMainForm.LoadPlugin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IMainForm
的用法示例。
在下文中一共展示了IMainForm.LoadPlugin方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LoadPlugin
public static void LoadPlugin(string FileName, IMainForm Parent, bool ShowError)
{
try
{
Assembly pluginAssembly = Assembly.LoadFrom(FileName);
Type[] types = pluginAssembly.GetTypes();
foreach (Type type in types)
{
if (type.Name.Equals("Plugin"))
{
IPlugin inst = (IPlugin)pluginAssembly.CreateInstance(type.FullName);
PluginType add = new PluginType(inst.Name, FileName, inst.Version);
if (!Plugins.Contains(add))
{
Plugins.Add(add);
inst.Initialize(Parent);
Parent.LoadPlugin(inst);
}
else if (ShowError) MessageBox.Show("This plugin is already loaded!", "Error");
pluginAssembly = null;
inst = null;
add = null;
return;
}
}
if (ShowError) MessageBox.Show("This is not valid plugin!", "Error");
}
catch (Exception ex)
{
if (ShowError) MessageBox.Show(ex.Message, "Error");
}
}