创建 DLL 步骤 和 SRC
LIBRARY SimulationTouchDll
EXPORTS MouseControl
GetPosition
//MouseControlInterface.def 文件
#pragma once #define RET_SUCCESS 0
#define RET_ERROR 1 enum MOUSE_STATUS
{
MOUSE_MOVE,
MOUSE_LCLICK,
MOUSE_RCLICK,
MOUSE_DCLICK,
}; extern "C" _declspec(dllexport)int __stdcall MouseControl(MOUSE_STATUS eMouseStatus, double dX, double dY);
extern "C" _declspec(dllexport)int __stdcall GetPosition(long *pX, long *pY);
//MouseControlInterface.h 头文件
#include "MouseControlInterface.h"
#include "Sensor.h"
#include <Windows.h> int __stdcall MouseControl(MOUSE_STATUS eMouseStatus, double dX, double dY)
{
POINT p;
p.x = dX;
p.y = dY; HWND hd = ::WindowFromPoint(p);
HWND hdp = ::GetParent(hd); LPARAM lParam = MAKELPARAM(p.x,p.y);
switch(eMouseStatus)
{
case MOUSE_MOVE:
break;
case MOUSE_LCLICK:
::PostMessage(hd, WM_LBUTTONDOWN, MK_LBUTTON, lParam);
::PostMessage(hd, WM_LBUTTONUP, MK_LBUTTON, lParam);
break;
case MOUSE_RCLICK:
::PostMessage(hd, WM_RBUTTONDOWN, MK_RBUTTON, lParam);
::PostMessage(hd, WM_RBUTTONUP, MK_RBUTTON, lParam);
break;
case MOUSE_DCLICK:
::PostMessage(hd, WM_LBUTTONDOWN, MK_LBUTTON, lParam);
::PostMessage(hd, WM_LBUTTONUP, MK_LBUTTON, lParam);
::PostMessage(hd, WM_LBUTTONDBLCLK, MK_LBUTTON, lParam);
break;
default:
break; }
return RET_SUCCESS;
} int __stdcall GetPosition(long *pX, long *pY)
{
POINT p;
GetCursorPos(&p);
*pX = p.x;
*pY = p.y; Sensor sensor;
sensor.SetInterval(5); return RET_SUCCESS;
}
//MouseControlInterface.cpp 源文件
#pragma once class Sensor
{
private:
static int interval;
public:
void SetInterval(int inter);
};
//Sensor.h头文件
#include "Sensor.h"
#include <Windows.h> void Sensor::SetInterval(int inter)
{
inter++;
};
//Sensor.cpp源文件
创建 DLL 步骤 和 SRC的更多相关文章
- C#创建dll类库
类库让我们的代码可复用,我们只需要在类库中声明变量一次,就能在接下来的过程中无数次地使用,而无需在每次使用前都要声明它.这样一来,就节省了我们的内存空间.而想要在类库添加什么类,还需取决于类库要实现哪 ...
- 创建dll教程
先看我的总结: 总结: 1.头文件中如果想以C形式提供,要判断,如果定义了 _cplusplus, extern "c"{ 这里写接口声明 } 2.接口声明中,要表明接口接入点的 ...
- 在VS2015中用C++创建DLL并用C++调用且同一时候实现对DLL的调试
一:用C++创建DLL 依照[在VS2015中用C++编写可被其他语言调用的动态库DLL]提示创建C++编写的DLL.或參考[在VS2015中用C++创建DLL并用C#调用且同一 ...
- c语言创建dll以及使用
0x01. declspec(dllexport)创建导出dll 笔者这边使用vs 2015,但是性质都一样的 新建项目 -> Win32控制台应用程序 -> dll 这时候就创建了一个项 ...
- SOAPUI使用教程-创建MockResponse步骤
MockResponse测试步骤监听一个SOAP请求并返回一个预先配置的响应,然后再继续. 传入的请求的能被断言检查. 这种TestStep使用场景是例如: 客户端测试,验证传入的请求并返回假或不正确 ...
- 在VS2015中用C++创建DLL并用C#调用且同时实现对DLL的调试
from:http://m.blog.csdn.net/article/details?id=51075023 在VS2015中先创建C#项目,然后再创建要编写的动态库DLL项目,这样做的好处是整个解 ...
- [Java] 实例创建的步骤
创建类的一个实例时,按照下面步骤进行创建: 1. 给当前类及其父.祖类的所有成员字段分配空间,并给它们赋予默认值 2. 开始执行当前类的构造器 3. 如果当前类有父类,则对父类创建一个实例:从第 2 ...
- VC++2008 用空工程创建 DLL
VC++2008 用空工程创建 DLL 一.创建 DLL 工程项目: 1)点击菜单[File] -> [New] -> [Project...] 弹出 “New Project” 对话框: ...
- windows编程:创建DLL
创建DLL Dll是动态链接库的缩写,可以作为附加代码动态映射到进程的地址空间中. 动态库的一般创建方法如下 方法1.使用 __declspec(dllexport) 方式导出 一般的框架如下 // ...
随机推荐
- Android 圆角ListView
方法一:定义 <?xml version ="1.0" encoding ="UTF-8" ?> <shape xmlns:android = ...
- [Docker] Accessing a Container
If you want to get into container and look around, you can use: docker container exec to run against ...
- 百度UEditor图片上传、SpringMVC、Freemarker、Tomcat、Nginx、静态资源
个人官网.公司项目都需要 可视化编辑器,百度UEditor做得很不错,就用的这个.项目后台用到了SpringMVC.Freemarker,开发过程中部署在Jetty,线上部署用Tomcat,最后可能配 ...
- [CSS] Get up and running with CSS Grid Layout
We’ll discuss the display values pertinent to CSS Grid Layout – grid, inline-grid, and subgrid. Then ...
- centos7 rabbitmq安装/配置
原文:centos7 rabbitmq安装/配置 因为RabbitMQ是由erlang实现的,所以要先安装erlang再安装rabbitMQ 1.先配置yum软件源地址EPEL(EPEL是 ...
- [HTML5] Using the tabindex attribute for keyboard accessibility
You can make any element keyboard interactive with the HTML tabindex attribute. But you might need a ...
- HDU 1502 - dp + 压位
传送门 题目大意: 3*n的字符串,A.B.C分别有n个,w(X)代表X字母出现的次数,要求该字符串的所有前缀中w(A) >= w(B) >= w(C),问合法方案数有多少. 题目分析: ...
- 【33.33%】【codeforces 608C】Chain Reaction
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- 一个2013届毕业生(踏上IT行业)的迷茫(4)
等了大概三个月,终于到9月份了,以前没有出过远门,这次要去西安上学,一个人父母还是不放心,带了几件衣服就和父亲匆匆去坐火车,这一路有多少个第一次啊,第一次和父亲一块坐车.第一次坐火车.第一次出县城.第 ...
- C# 调用PowerShell方法
PowerShell应为编写和运行都很方便,所以为了重复利用,经常写了一些小方法或者PS代码片段.使用的时候可能会很难找到自己想要的那个方法,如果要是有一个界面把这些代码管理起来并且调用,那就很爽了 ...