插件

提供适用于 SimpleRemoter 的插件编码规范、示例和下载。

编码规范

插件是一个 Windows DLL, 必须以 C 语言形式导出一个名为 run 的函数, 参数类型为 PluginParam*(定义在 commands.h 头文件中)。

commands.h(节选)
// commands.h(节选)
struct PluginParam {
    char   IP[64];   // 主控服务器 IP
    int    Port;     // 主控服务器端口
    // ... 其他字段
};
  • • 导出约定:extern "C" __declspec(dllexport) DWORD WINAPI run(LPVOID param)
  • • 参数 param 可强转为 PluginParam* 使用
  • • 返回值:DWORD,正常退出返回 0
  • • 必须包含头文件 ../../common/commands.h(相对于插件源码目录)

仅支持 64 位:插件必须编译为 64 位 DLL。 若加载 32 位插件,客户端将自动忽略,不会执行。

禁止修改 PluginParam 结构体: 任何字段的增删或顺序调整都会改变结构体大小和字节对齐,导致客户端在访问该结构体时发生内存越界,引起程序崩溃。 插件只能读取该结构体,不可对其进行任何修改。

插件示例

以下示例展示如何读取主控地址并弹窗显示:

plugin_demo.cpp
#include "../../common/commands.h"

extern "C" __declspec(dllexport) DWORD WINAPI run(LPVOID param)
{
    PluginParam* p = reinterpret_cast<PluginParam*>(param);

    char buf[200] = {};
    sprintf(buf, "Master Address: %s:%d", p->IP, p->Port);
    MessageBoxA(NULL, buf, "Plugin Message", MB_OK | MB_ICONINFORMATION);

    return 0;
}

下载插件

请先登录后,在资源中心查看并下载可用插件。

登录后下载