小编Aar*_*lla的帖子

跨平台键盘记录器

我正在寻找从Python上观看Windows,Linux和Mac上的鼠标和键盘事件的方法.

我的应用程序是一个时间跟踪器.我不是在调查这个事件,我只记录它发生的时间.如果在一定时间内没有事件,例如10分钟,我假设用户已离开并停止当前项目.

当用户返回(事件再次进入)时,我等待片刻(因此不会被清洁人员或您的宠物或地震触发).如果事件持续的时间较长,我假设用户已经返回并弹出一个小的非活动窗口,在那里她可以选择将时间间隔添加到"中断",当前项目(会议等)或一个不同的项目.

我已经使用pyHook解决了Windows的键盘记录器.

在Linux上,我找到了一个解决方案,但我不喜欢它:我可以在/ etc/input中查看所有设备节点,并在每次看到事件时在/ var或/ tmp中的某处更新时间戳.有两个缺点:1.我无法判断事件是否来自运行时间跟踪器的用户和2.这个小程序需要以root身份运行(不好).

在Mac上,我还不知道.

问题:

  1. 是否有更好的方法来了解用户是否正在创建事件而不是在Linux上观看事件设备?

  2. 任何指针如何在Mac上做到这一点?

python time-management cross-platform keylogger

9
推荐指数
2
解决办法
3万
查看次数

pygame中的混合模式是什么意思?

Surface.blit在1.8中有一个新参数:blend.定义了以下值:

  • BLEND_ADD
  • BLEND_SUB
  • BLEND_MULT
  • BLEND_MIN
  • BLEND_MAX
  • BLEND_RGBA_ADD
  • BLEND_RGBA_SUB
  • BLEND_RGBA_MULT
  • BLEND_RGBA_MIN
  • BLEND_RGBA_MAX
  • BLEND_RGB_ADD
  • BLEND_RGB_SUB
  • BLEND_RGB_MULT
  • BLEND_RGB_MIN
  • BLEND_RGB_MAX

有人可以解释这些模式的含义吗?

pygame blending alphablending

9
推荐指数
1
解决办法
5200
查看次数

用JavaScript创建DIV图像(GIF/PNG)

我想知道是否有一个JavaScript库可以让我从DIV的内容生成一个Image.

基本上这是一些服务器端打印代码所必需的,它需要从浏览器打印背景.

我最终想要做的是将DIV内容编码为PNG格式,并通过打印操作发布编码数据.

任何想法,如果这是可能的?

[编辑]我所拥有的是一个地图应用程序,其中背景数据直接从图像服务器进入浏览器DIV(想想谷歌地图).div是我主要数据的背景.按下Print时,服务器会根据其知道的数据生成PDF,但对浏览器的后台数据一无所知.我真正喜欢的是能够以某种方式为服务器提供浏览器背景图像!

干杯,Ro

javascript image

9
推荐指数
1
解决办法
2万
查看次数

如何使用Java RMI实现Observer模式?

我有一个客户端在服务器上启动一个长时间运行的进程.我会定期向用户展示后台正在发生的事情.最简单的方法是轮询服务器,但我想知道是否没有办法为此实现Observer模式.不幸的是,我正在使用RMI与服务器通信,我担心我必须将我的客户端变为RMI服务器.

还有另外一种方法让我失踪吗?

java rmi observer-pattern

9
推荐指数
1
解决办法
8226
查看次数

如何从JavaScript调用Java实例的方法?

我正在使用Mozilla Rhino JavaScript模拟器.它允许我将Java方法添加到上下文中,然后将它们称为JavaScript函数.但除非我使用静态方法,否则我无法工作.

问题是这部分文档:

如果方法不是静态的,那么Java'this'值将对应于JavaScript'this'值.任何使用不具有正确Java类型的'this'值调用该函数的尝试都将导致错误.

显然,我的Java"this"值与JavaScript中的值不对应,我不知道如何使它们对应.最后,我想在Java中创建一个实例,并在全局范围内安装几个方法,因此我可以从Java初始化实例,但在我的脚本中使用它.

有没有人有一些示例代码?

javascript java rhino method-call

9
推荐指数
1
解决办法
8665
查看次数

在Groovy中创建字符串列表

Groovy中的以下代码将GStrings 添加到列表中:

List<String> args = [ 'cmd', "-Dopt=${value}" ]
Run Code Online (Sandbox Code Playgroud)

当我ProcessBuilder用这个列表创建一个时,我得到一个ClassCastException.什么是将列表元素强制转换为正确类型的常规方法?

groovy list gstring type-coercion

9
推荐指数
1
解决办法
3万
查看次数

为什么linux内核使用陷阱门来处理divide_error异常?

在内核2.6.11.5中,除零异常处理程序设置为:

set_trap_gate(0,&divide_error);
Run Code Online (Sandbox Code Playgroud)

根据"了解Linux内核",用户模式进程无法访问英特尔陷阱门.但是用户模式进程很可能也会生成一个divide_error.那么为什么Linux以这种方式实现呢?

[编辑]我认为问题仍然是开放的,因为set_trap_gate()将IDT条目的DPL值设置为0,这意味着只有CPL = 0(读取内核)代码才能执行它,因此我不清楚如何从该处理程序调用此处理程序用户模式:

#include<stdio.h>

int main(void)
{
    int a = 0;
    int b = 1;

    b = b/a;

    return b;
}
Run Code Online (Sandbox Code Playgroud)

这是编译的gcc div0.c.输出./a.out是:

浮点异常(核心转储)

因此看起来这不是由0陷阱代码划分处理的.

linux x86 kernel interrupted-exception

9
推荐指数
3
解决办法
3186
查看次数

来自字符串的Firefox new Date()在本地时区构建时间

我正在尝试从字符串创建日期对象.我得到ISO格式的日期,除了像"2012-01-30T16:23:12"的毫秒部分

当我在IE,Chrome和Firefox中运行以下代码时,结果会有所不同(链接到小提琴)

currentDate = "2012-01-30T16:23:12";
var date = new Date(currentDate);
alert(date);
Run Code Online (Sandbox Code Playgroud)

IE和Chrome将字符串视为UTC,但firefox在本地时区考虑.

除了在任何地方检查用户代理之外,有没有通用的方法来解决它?

javascript timezone date

9
推荐指数
1
解决办法
8046
查看次数

如何在Hibernate HQL中使用Oracle的regexp_like?

我正在使用oracle 10ghibernate 3.3.2.我之前在sql中使用过正则表达式,现在我第一次在HQL中使用它.

Query query = getSession().createQuery("From Company company 
where company.id!=:companyId and 
regexp_like(upper(rtrim(ltrim(company.num))), '^0*514619915$' )");
Run Code Online (Sandbox Code Playgroud)

这是我的hql,当我运行它没有regex_like函数时,它按预期运行.但我无法用regex_like表达式执行它.

它说..

嵌套异常是org.hibernate.hql.ast.QuerySyntaxException:意外的AST节点:(靠近第1行,第66列......

请帮助,我如何regex_like在hibernate本机查询中使用?或其他一些替代方法.

java sql oracle hibernate hql

9
推荐指数
1
解决办法
1万
查看次数

如何在MANIFEST.MF中处理类路径中带空格的文件?

我尝试使用中的Class-Path元素构建JAR MANIFEST.MF.我从外部源(我的情况下是Maven)获取类路径的元素.由于路径是绝对的并且超出了我的控制范围,因此它们可以包含奇怪的字符,如空格.

由于空格用于分隔类路径中的项目,因此该路径不起作用:

Class-Path: C:\User\Some Odd Name\project\target\project-1.0.0.jar
Run Code Online (Sandbox Code Playgroud)

如何在JAR Manifest中的类路径项中转义/编码奇数字符/空格?

java jar spaces classpath

9
推荐指数
1
解决办法
3614
查看次数