2010-04-19 54 views
7

我们使用CPNMouse来运行Windows XP上的应用程序。一个鼠标设备从正常事件队列中分离出来,所以我们可以得到它的位置和事件并自己绘制光标。Windows 7上的多个鼠标光标

不幸的是,CPNMouse无法在Windows Vista/7上运行(请参阅here)。是否有任何库/ SDK在Windows 7上提供相同的功能?

只是为了澄清 - 我们希望“正常”游标存在并绘制另一个游标,该游标应映射到不同的鼠标设备。


更新:不再支持 CPNMouse及其以前 “开源” 从SourceForge撤回。 Only this legacy documentation page exists on the official CPN Tools site

貌似唯一的商业产品都可以...

如果任何人有从SourceForce原始源代码的副本,请张贴在这里的链接...假设原始许可证是一个标准的SourceForge(开放共享/扩展)版本,应该可以让某人将其分发给一个新项目以继续开发(免费工具)。

回答

2

您应该使用windows ddk中的dsf创建一个模拟鼠标设备,然后任何程序都可以接受来自该特定模拟鼠标设备的输入并自行绘制指针。所以你创建的任何程序都会有多个鼠标设备。它很难过的说,它不可能在Windows 7操作系统中拥有多个指针,尽管它们并不支持它。所以你必须自己将屏幕拖到屏幕上。 我很害怕问题是你需要为鼠标自己画一个指针

+0

这正是CPNMouse正在做的事情 – kshahar 2011-11-01 15:36:24

+0

dsf也用于测试从Windows XP到Windows 7的工业线设备,包括服务器版本。 – jeffery 2012-03-07 00:23:07

+0

我在我的kinectmultipoint.codeplex.com页面有更好的版本。目前正在开展工作。它在dotnet中,但IAM差不多完成了,你可以在wdk中使用默认的c/C++代码并编译并获得我在我的vbscript文件中使用的softehci和其他dll文件。 Iam寻找Windows 8的替代品,但他们似乎没有到目前为止。尝试查看我的代码,尽管您可以修改它来以不同于C++的方式存储鼠标数据。您可以使用多点并让它为您绘制鼠标设备,或者使用一些dsf代码来检测鼠标设备的数量并绘制到屏幕上。 – jeffery 2012-12-28 17:50:40

3

看看的MultiPoint SDK,它允许相同的显示,也支持Windows 7

+0

对不起,我忘了提及应用程序不使用.NET框架。它使用本地C++和Qt 4. – kshahar 2010-04-19 10:38:01

+0

我和我打赌不少其他人正在寻找一种在运行全屏应用程序或游戏时使用第二个显示器的方式。游戏是最好的例子,他们通常拥有所有有效输入的所有权。我希望使用我的备用显示器来操作游戏集成网站(许多人拥有那个,例如BattleField 4),或者只是在玩游戏时浏览和控制我自己的音乐播放列表。对于这个只有一个操作系统解决方案(不是一个特定的应用程序使用的API)将做的伎俩。 – 2014-07-20 10:05:11

2

你想附带了Windows平台SDK的“原始输入” API多达25个光标:MSDN: About Raw Input

+0

我知道RawInput API,它也可以在Windows XP中使用。问题是我不能像我在我的问题中提到的那样使用它:在窗口应用程序中,不能仅为其中一个设备绘制光标。 – kshahar 2010-04-19 10:42:49