创建 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 JNI 自定义对象为参数和返回值
ndroid JNI 提供了很强大的支持,不仅可以采用基本类型做为参数和返回值,同时也支持自定义对象做为参数和返回值,以下举例说明. 一.定义作为输入和返回的自定义类 (仅提供两个简单类型和一个打印函 ...
- RandomStringUtils RandomUtils
上一篇是StringUtils 链接http://www.cnblogs.com/tele-share/p/8060129.html 1.RandomStringUtils 1.1模拟实现random ...
- 安装alien,DEB与RPM互换
http://blog.csdn.net/sidely/article/details/40181653
- PHP数组foreach循环如何实现逆序访问?
PHP数组foreach循环如何实现逆序访问? 一.总结 1.array_reverse($array) :foreach(array_reverse($array) as $key=>$val ...
- spark 2.0.2 集群搭建
由于之前已经搭建过hadoop相关环境,现在搭建spark的预备工作只有scala环境了 一,配置scala环境 1.解压tar包后,编辑/etc/profile 2.source /etc/prof ...
- NOIP2016 天天爱跑步 - 树上差分
传送门 题目分析: 一年前还是个傻子的时候居然直接放弃了这题. 首先列出两个方程:如果i节点的观察员能够观察到由s->t的那个人,那么: \[dep[s] - dep[i] = w[i], de ...
- Linux环境编写脚本安装配置JDK,Tomcat,含Tomcat自启动
mkdir /usr/java mkdir /znywImage cp -f /usr/jdk-7u79-linux-x64.tar.gz /usr/java tomcatPath=/usr/apac ...
- Google Android Studio Kotlin
Google Android Studio Kotlin 开发环境配置 Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对 ...
- selenium 爬取空间说说
package cn.hb.util; import java.io.File; import java.io.FileWriter; import java.io.IOException; impo ...
- JavaScript函数实现鼠标指向后带图片的提示效果
转载:http://www.cnblogs.com/jack86514/archive/2009/04/01/1427584.html 当我们在写一个网页程序的时候,很多方法可以提供页面的动态显示,从 ...