一步一步掌握SD3,动态加入一个插件

简介:   制作一个SD的插件,SD的插件是由两个文件组成的即*.dll,*.addin*.addin文件主要集中放在addin目录下,  我们来看一下,一个插件的.addin文件 <AddIn name        = "cxyMenu"       author      = "Administrator"       url         = "http://www.sun

 

制作一个SD的插件,SD的插件是由两个文件组成的即*.dll,*.addin
*.addin文件主要集中放在addin目录下, 

我们来看一下,一个插件的.addin文件

< AddIn  name         = "cxyMenu"
       author      
= "Administrator"
       url         
= "http://www.sunhshine.com"
       description 
= "to show a messageBox here" >

    
< Manifest >
        
<!--  unique name of the AddIn, used when others AddIns want to reference this AddIn  -->
        
< Identity  name ="SharpMenu"  version  = "@SharpMenu.dll" />
        
< Dependency  addin ="cxysharp"  version ="1.0" />
    
</ Manifest >

    
< Runtime >
        
< Import  assembly ="SharpMenu.dll" />
    
</ Runtime >

    
< Path  name  = "/Workspace/Tools" >
        
< MenuItem  id  = "cxyMenuCommand1"
                  label 
= "cxyMenu"
                  class 
= "SharpMenu.ToolCommand1"
        
/>
    
</ Path >
</ AddIn >

addIn name:插件管理器中显示的名字,
author:作者
url:发布这个插件的网站,在右击这个插件的时候,在快捷菜单中将出现转到主页这个菜单项
description:插件功能的描述

Manifest:
identity name:这里是在SD的整个插件系统中唯一用来标识这个插件的名字
Version:版本号
Dependency:这个插件用到的依赖插件

Runtime:
Import assembly:运行时需要动态加载的dll文件,及路径

Path:
name:这个命令将出现在那个菜单栏下面


MenuItem中的项解释见上一篇文章


DLL类文件

功能很简单,就不在这里说了,代码如下:

using  System;
using  System.Collections.Generic;
using  ICSharpCode.Core;
using  System.Windows.Forms;

namespace  SharpMenu
{
    
public class ToolCommand1 : AbstractMenuCommand
    
{
        
public override void Run()
        
{
            MessageBox.Show(
"我被点了");
        }

    }

}

安装这个插件:
将.addin拷到addins文件夹下面
将dll放到.addin中指定的位置处,这样,这个插件就成为一个内置的插件了

当然也可以通过addinmanger来安装这个插件

相关文章
|
存储 JavaScript 前端开发
VSCode安装配置使用教程(最新版超详细保姆级含插件)一文就够了
Visual Studio Code 是一个轻量级功能强大的源代码编辑器,支持语法高亮、代码自动补全(又称 IntelliSense)、代码重构、查看定义功能,并且内置了命令行工具和 Git 版本控制系统。适用于 Windows、macOS 和 Linux。它内置了对 JavaScript、TypeScript 和 Node.js 的支持,并为其他语言和运行时(如 C++、C#、Java、Python、PHP、Go、.NET)提供了丰富的扩展生态系统。为了不影响读者的沉浸式阅读学习,如需使用目录请在左侧使用即可。
7509 0
VSCode安装配置使用教程(最新版超详细保姆级含插件)一文就够了
|
9月前
|
人工智能 资源调度 API
AnythingLLM:34K Star!一键上传文件轻松打造个人知识库,构建只属于你的AI助手,附详细部署教程
AnythingLLM 是一个全栈应用程序,能够将文档、资源转换为上下文,支持多种大语言模型和向量数据库,提供智能聊天功能。
6835 76
|
运维 监控 安全
构建高效运维体系
本文将探讨如何通过科学的方法与先进的技术,实现高效、稳定、安全的IT运维管理。我们将从运维流程优化、自动化工具应用、监控告警机制、故障应急处理以及团队建设等方面,全面解析高效运维体系的构建方法与实践。
295 20
|
存储 传感器 数据安全/隐私保护
CVPR 2024 Highlight:基于单曝光压缩成像,不依赖生成模型也能从单张图像中重建三维场景
【5月更文挑战第15天】CVPR 2024会议上,清华大学研究人员提出的SCINeRF利用单曝光压缩成像(SCI)技术结合神经辐射场(NeRF)进行3D场景重建。SCI以低成本捕捉高维数据,而SCINeRF将SCI的成像过程融入NeRF训练,实现复杂场景的高效重建。实验显示,该方法在图像重建和多视角图像生成方面取得优越性能,但实际应用仍需解决SCI系统设计、训练效率和模型泛化等挑战。[Link: https://arxiv.org/abs/2403.20018]
381 2
|
11月前
|
Oracle Java 关系型数据库
2023年震撼!Java在TIOBE排行榜滑坡至历史最低!
自2023年6月起,Java在TIOBE编程语言排行榜中跌至历史最低的第4位,与C#的差距缩小至1.2%。Java受欢迎程度下降的主要原因是Oracle在Java 8后引入付费许可模式,导致用户流失。尽管如此,Java仍是一门成熟、稳定且跨平台的语言,拥有庞大的用户群和丰富的生态系统。Oracle通过推出Java 17免费版及Java 21的新特性,努力保持其竞争力。未来,Java将继续与其他编程语言竞争并发展。
289 1
|
JSON 数据库 开发者
FastAPI入门指南:Python开发者必看——从零基础到精通,掌握FastAPI的全栈式Web开发流程,解锁高效编码的秘密!
【8月更文挑战第31天】在当今的Web开发领域,FastAPI迅速成为开发者的热门选择。本指南带领Python开发者快速入门FastAPI,涵盖环境搭建、基础代码、路径参数、请求体处理、数据库操作及异常处理等内容,帮助你轻松掌握这一高效Web框架。通过实践操作,你将学会构建高性能的Web应用,并为后续复杂项目打下坚实基础。
719 0
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】17. Pytorch中模型参数的访问、初始化和共享方法
【从零开始学习深度学习】17. Pytorch中模型参数的访问、初始化和共享方法
|
自然语言处理 JavaScript 前端开发
文本分析-使用Python做词频统计分析
文本分析-使用Python做词频统计分析
1005 0
|
人工智能 安全 机器人
新手必看!ChatGPT常见问题总整理,你遇到了几个?
新手必看!ChatGPT常见问题总整理,你遇到了几个?
|
存储 XML 开发框架
Unity Metaverse(三)、Protobuf & Socket 实现多人在线
使用Scoket TCP和Protobuf通信协议实现多人在线。
516 1
Unity Metaverse(三)、Protobuf & Socket 实现多人在线