This repository has been archived by the owner on Sep 6, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 43
插件开发
John Smith edited this page Jan 22, 2017
·
4 revisions
阅读本教程前首先需要搭建开发环境
更多插件例程见Plugin目录下的项目
你可以选择使用插件项目模板或者手动配置项目
- 把插件模板导入VS2013:
把Plugin\TiebaManagerPluginTemplate.zip
放到你的VS2013模板目录下,你可以在工具-选项-项目和解决方案-用户项目模板位置看到你的模板目录 - 新建项目,模板选择贴吧管理器插件,位置选择Plugin目录,否则无法找到CommonProperty.props
- 新建项目,模板选择MFC DLL
- 配置:所有配置,项目属性-常规
输出目录填贴吧管理器中的Plugin目录,即$(SolutionDir)$(Configuration)\plugin\
- 配置:Release
平台工具集选择Visual Studio 2013 - Windows XP (v120_xp),这一步是为了Release版能在XP下运行 - 在属性管理器中Debug和Release添加现有属性表,选择CommonProperty.props
在插件的初始化函数中添加事件监听,以添加确认贴吧事件为例:
#include <TBMAPI.h>
#include <TBMEvent.h>
#include <TBMCoreConfig.h>
using namespace std::placeholders;
// 初始化插件,注册Listener
void CPluginSample::Init()
{
// 注册监听器
// 因为listener是std::function,这里可以用函数指针、std::bind、lambda表达式等
g_postSetTiebaEvent.AddListener(std::bind(&CPluginSample::OnPostSetTieba, this, _1), m_module);
}
// 确认贴吧成功后触发这个事件
void CPluginSample::OnPostSetTieba(const CString& forumName)
{
// 这里可以处理事件,也可以取消事件,当然有些事件不能取消,比如这个PostSetTiebaEvent
GetLog().Log(_T("<font color=green>Hello world! 设置了贴吧:</font>") + event_->m_forumName);
}
你可以在API的头文件里查看可以监听的事件