C#调用大漠插件

大漠插件是一个很不错的东西,在按键精灵和易语言里面用得很多,可以后台找图找字,写游戏自动脚本用得特别多。前面写一个微信的自动脚本,查了一些资料,易语言不太熟悉,按键精灵功能上可能不好实现,就找了些资料,大漠插件是可以用在C#里的调用的。这里分享下方法。

一、引用Ddm.dll
.NET里面可以直接引用,引用方法,添加引用--COM--找到DM,双击即可
二、注册大漠插件
//这是注册DLL到系统的一个方法,注册大漠则调用 AutoRegCom("regsvr32 -s dm.dll");
static string AutoRegCom(string strCmd)
        {
            string rInfo;

            try
            {
                Process myProcess = new Process();
                ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("cmd.exe");
                myProcessStartInfo.UseShellExecute = false;
                myProcessStartInfo.CreateNoWindow = true;
                myProcessStartInfo.RedirectStandardOutput = true;
                myProcess.StartInfo = myProcessStartInfo;
                myProcessStartInfo.Arguments = "/c " + strCmd;
                myProcess.Start();
                StreamReader myStreamReader = myProcess.StandardOutput;
                rInfo = myStreamReader.ReadToEnd();
                myProcess.Close();
                rInfo = strCmd + "\r\n" + rInfo;
                return rInfo;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
三、实例化大漠对象
Dm.dmsoft dm = new Dm.dmsoft();
四、调用大漠的方法

直接通过实例化的对象dm调用,如dm.MoveTo(30, 30);

完整代码: 窗体上放一个按钮,点击按钮,调用大漠插件将鼠标移动到(30,30)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;

namespace Player
{
    public partial class Player : Form
    {
        public Player()
        {
            InitializeComponent();
            AutoRegCom("regsvr32 -s dm.dll");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Dm.dmsoft dm = new Dm.dmsoft();
            dm.MoveTo(30, 30);

        }

        static string AutoRegCom(string strCmd)
        {
            string rInfo;

            try
            {
                Process myProcess = new Process();
                ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("cmd.exe");
                myProcessStartInfo.UseShellExecute = false;
                myProcessStartInfo.CreateNoWindow = true;
                myProcessStartInfo.RedirectStandardOutput = true;
                myProcess.StartInfo = myProcessStartInfo;
                myProcessStartInfo.Arguments = "/c " + strCmd;
                myProcess.Start();
                StreamReader myStreamReader = myProcess.StandardOutput;
                rInfo = myStreamReader.ReadToEnd();
                myProcess.Close();
                rInfo = strCmd + "\r\n" + rInfo;
                return rInfo;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
    }
}

原文地址:https://www.cnblogs.com/hilolin/p/9114530.html

时间: 2024-10-10 20:27:13

C#调用大漠插件的相关文章

在VBA中调用大漠插件[ V2.1133 ]

VBA中大漠插件的调用[ V2.1133 ] -首先要在电脑中注册大漠插件,系统暂不支持windows 8 :如想获得更好的体检请购买收费版本大漠插件: -代码如下: ======================== Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) '以下为延时函数 Delay ( ) Public Function Delay(DT As Long)For i = 0 To

c++免注册大漠插件

论坛中可能有朋友在用VS2010编写软件,所以我在此把VS2010如何免注册调用大漠插件的详细步骤说一下,便于和我一样用VS编程的朋友使用.第一步:首先建立一个基于对话框的MFC应用程序,然后依次点击项目->类向导->添加类->类型库中的MFC类...->选择类的来源是从文件而来,找到dm.dll的路径并添加.此时,能够看到大漠的接口Idmsoft,选中它并生成类Cdmsoft,此时VS会自动为你生成类的头文件Cdmsoft.h第二步:在需要调用的地方#include 第一步创建的

C++使用大漠插件及截图

前两天,为了做熟悉跨平台网络交互.简单的做了一个安卓手机往电脑发送命令的软件,包含电脑服务端和手机客户端,刚好这几天都比较闲,想起前段时间用按键精灵时,大漠插件(哎,孤陋寡闻,居然最近才知道这东东是干什么用的),于是乎,动手写了一个简单的远程控制. 其实做的事情很简单: 1.发送一张屏幕截图到手机端,并在手机端显示出来,并且可以处理放大,移动等. 2.点击图片中某一位置时,像服务端发送消息,服务端调用大漠插件,进行鼠标移动和点击操作. 3.操作完成后,简单的回复一个新的屏幕截图. 好吧,似乎确实

在Qt中使用大漠插件

因工作需要,项目需求(要编写一个营销软件,其中一个功能是控制QQ和微信发送广告消息给指定的联系人或群组, 因为我Windows和逆向水平还不到家,起初的调用Windows API的设计方案不可行,于是只好使用第三方库:大漠插件=_=), 故采用大漠插件实现我所需要的功能.关于大漠插件,不多说,很多人用它写辅助=_=更多详细介绍,请参考这里. 本来是想用DuiLib做界面的(感觉用DuiLib做界面更灵活),但考虑到开发效率(其实最重要的是我对Win32和MFC的熟悉程 度还不够),于是我用了Qt

ThinkPHP自动获取关键词(调用第三方插件)

ThinkPHP自动获取关键词调用在线discuz词库 先按照下图路径放好插件 方法如下 /** * 自动获取关键词(调用第三方插件) * @return [type] [description] * www.shouce.ren */ public function keyword() { Vendor('autokeyword.AutoKeyword'); $keyword = new \AutoKeyword(); $str='自动获取关键词并发大数据我们大家好吃饭啦调用第三方插件'; $

jquery ajax 调用kkpager插件 异步加载重新生成分页后,点击页数还是跟首次加载一样

kkpager的用法网上有很多,可以百度的到. 但是在调用动态数据的时候发现两个问题 1.Ajax数据变化但是页码不变的问题,方法来自网上 2.按查询条件重新生成数据和分页,点击分页事件后totalpage 和totalrecord 和没加条件查询的数据一样. 主要原因是因为客户端不会帮你保留总页码数和总条数, 所以在按查询条件重新生成数据时,用hidden按钮绑定你的总页数和总条数 下面是ajax 调用后台数据,返回的总页数和总条数,都存放在hidden里了 $.ajax({ type: "g

如何在 静态编译的QT 5.5.1 中 使用数据库插件连接 ODBC(调用静态插件)

前段时间由于工作的关系,需要编写一个将数据插入到 Sql server 2012 的桌面软件. 由于之前使用的是MFC,偶然间接触到了Qt后,被它的简洁惊艳到了,于是便毅然而然的转投到了Qt的怀抱,哈哈…… 废话不多说,我使用的是最新的Qt 5.5.1版本(Qt 5.5.1 for Windows 32-bit MinGW), 在一路查看帮助文档后, 终于是把程序编译出来,正常运行了.正当我满心欢喜的交付出去的时候,遇到问题了,程序在对方的电脑上运行时, 提示缺少动态库!而且不同电脑缺少的库还不

ionic2 调用自定义插件之研究

摘要 最近在研发一个移动项目,架构已经定型,使用Ionic2开发,虽然ionic2 已经提供了ionic native插件,但是当遇到一些特别的需求大多时候还是需要我们自己封装插件. cordova机制我在此就不提了,我们使用Typescript调用cordova plugin就如同调用第三方库是一个道理,那么这里就少不了书写declare文件,下面我就把几种封装调用的几种方式介绍一下. 方式一,编写全局declare文件 现在我们有一个“残峰(我的同事)”封装好的签名版插件,cordova p

咏南中间件修正了一处BUG,调用中间件插件会报:非法访问

咏南中间件修正了一处BUG,调用中间件插件会报:非法访问将以下方法修改成如下的代码即可function TServerMethods1.GetSvrData(const accountNo, defineId: WideString; inParams: OleVariant): OleVariant;// 调用中间件的插件// defineId=3位插件编号+2位自定义编号var p: TfrmPlugBase; plugClass: string; ps: TPersistent;begin