⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qmpluginobject.pas

📁 这个是按键精灵插件的delphi版本。这样可以扩展按键精灵的功能
💻 PAS
字号:
//--------------------------------------------------------------------------
//   欢迎您为按键精灵增加插件,插件的制作和使用方法如下(以Delphi 7.0英文版为例):
//   第一步:添加您需要的插件函数,方法如下:
//           在菜单中选择View->Type Library,选中IQMPlugin,点右键,选择New->Method,即可添加一个插件函数
//           插件函数中的整数类型参数请选择long,字符串类型参数请选择BSTR
//           插件函数的返回值需要设为最后一个参数,并在Modifier里面选择out和retval
//           如果返回值是整数类型,请把最后一个参数设为long *,如果是字符串类型,则设为BSTR *
//           按Ctrl+S保存后,Delphi会自动生成一个同名的函数,填写您需要的功能即可
//   第二步:请修改下面的Get_Plugin_Description函数,加入插件和插件函数的说明信息,帮助信息会显示在按键精灵里,方便使用
//   第三步:请在Type Library界面上选中QMPlugin,修改它的Name和GUID属性,尽量用一些独特的名字避免和别人的插件冲突
//   第四步:生成插件DLL!将DLL文件放到按键精灵的PLUGIN目录下,然后启动按键精灵测试您制作的插件功能是否正常
//   对插件有任何问题请发邮件给我们: hi@vrbrothers.com
//--------------------------------------------------------------------------

unit QMPluginObject;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
  ComObj, Windows,ActiveX, QMDelphiPlugin_TLB, StdVcl;

type
  TQMPlugin = class(TAutoObject, IQMPlugin)
  protected
    function Test1: WideString; safecall;
    function Test2(Number1, Number2: Integer): Integer; safecall;
    function Test3(const String1, String2: WideString): WideString; safecall;
    function Get_Plugin_Description(const MethodName: WideString): WideString;safecall;
    function GetMirHwnd: Integer; safecall;

  end;

implementation

uses ComServ;

//这是第一个插件函数,返回一个字符串
function TQMPlugin.Test1: WideString;
begin
  Test1:='本模板由№风雨夜归人制作 QQ:6029537';
end;

//这是第二个插件函数,接受两个整数参数,返回两个整数的和
function TQMPlugin.Test2(Number1, Number2: Integer): Integer;
begin
  Result:=Number1+Number2;
end;

//这是第三个插件函数,接受两个字符串参数StrA和StrB连接,返回StrA+StrB
function TQMPlugin.Test3(const String1, String2: WideString): WideString;
begin
  Result:=String1+String2;
end;

function TQMPlugin.Get_Plugin_Description(
  const MethodName: WideString): WideString;
begin
  if MethodName='' then
    Result:='按键精灵Delphi插件模板,由№风雨夜归人制作 QQ:6029537'
  else
  if MethodName='Test1' then
    Result:='这是一个测试字符串输出的例子,例:Plugin NewStr = QMDelphiPlugin.Test1()'
  else
  if MethodName='Test2' then
    Result:='这是一个测试两个数相加求和的例子 例:Plugin iCount = QMDelphiPlugin.Test2(3,4),返回数字7'
  else
  if MethodName='Test3' then
    Result:='这是一个测试两个字符串连接的例子 例:Plugin NewStr1 = QMDelphiPlugin.Test3("本模板由№风雨夜归人制作"," QQ:6029537")'
  else
  if MethodName='GetMirHwnd' then
    Result:='这是本人测试得到传奇窗口的例子 例:Plugin Mir2=QMDelphiPlugin.GetMirHwnd()'
  else
    Result:='';
end;

//获取传奇窗口句柄
function TQMPlugin.GetMirHwnd: Integer;
begin
  Result:=Findwindow(nil,'legend of mir2');
end;

initialization
  TAutoObjectFactory.Create(ComServer, TQMPlugin, Class_QMPlugin,
    ciMultiInstance, tmFree);
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -