草庐IT

gen-event

全部标签

c# - 嵌入式单声道 : How do you raise an event in C++?

我正在开发一个嵌入了Mono的应用程序,我想将一个事件从C++层引发到C#层。这是我拥有的:void*itr(NULL);MonoEvent*monoEvent;while(monoEvent=mono_class_get_events(klass,&itr)){if(0==strcmp(eventName,mono_event_get_name(monoEvent)))raiseMethod=mono_event_get_raise_method(monoEvent);}但是,raiseMethod总是返回NULL。查看MonoEvent的结构,似乎填充了add和remove方法,但

windows - C++11 + SDL2 + Windows : Multithreaded program hangs after any input event

我正在使用C++11、MinGW和WindowsAPI开发屏幕捕获程序。我正在尝试使用SDL2实时观察我的屏幕捕获程序是如何工作的。窗口打开正常,只要我只移动鼠标光标,程序似乎运行良好。但是如果我在窗口中单击它的菜单栏,在窗口外,或者按任意键,SDL窗口就会卡住。我已经为事件设置了一些日志记录以弄清楚发生了什么。除了SDL_WINDOW_FOCUS_GAINED之外,我从未收到任何事件,SDL_TEXTEDITING,和SDL_WINDOWEVENT_SHOWN以该顺序。所有这些都是在开始时收到的。我试图找到有关SDL事件处理的教程,因为这是我对问题根源的最佳猜测。除了基本的事件处理之

c# - WH_MOUSE_LL Hook 不会为注入(inject)的事件(mouse_event、SendInput)调用

我的代码使用WH_MOUSE_LLHook来最初抑制所有鼠标输入,除非dwExtraInfo属性设置为特定值。该程序还注册了鼠标设备的原始输入,因此我可以识别哪个设备负责输入。当我收到WM_INPUT消息并确定源时,根据设备我可能只想让事件生效,在这种情况下我用SendInput重新创建它(尝试过mouse_event,它也已被取代),提供数据在dwExtraInfo属性中。这个想法是Hook应该看到这个新的注入(inject)事件,看到额外的信息而不是抑制它。不幸的是,注入(inject)的事件永远不会被钩子(Hook)看到。尽管窗口过程看到相应的WM_INPUT消息,但SendIn

c# - "The description for Event ID X in Source Y cannot be found."

我正在尝试将我的Web应用程序中的自定义事件写入Windows事件日志。我一直没有让消息字符串正常工作,我不断收到“找不到源Y中事件IDX的描述。”为了缩小范围,我决定将一个事件写到我的机器上已经存在的源中。我刚刚查看了其中一个已写出的事件,特别是SceCli事件1704。我执行以下代码:varlog=newEventLog("Application");log.Source="SceCli";varev=newEventInstance(1704,0,EventLogEntryType.Information);log.WriteEvent(ev);但是,这仍然在事件查看器中为我提供

c# - .NET 进程间 "events"

我正在运行同一应用程序的多个实例。用户请求可以在每个实例上单击“退出”以将其关闭。我想将选项添加到“退出所有实例”,这将引发一些“事件”,通知应用程序的所有实例它们应该关闭。我不需要随此事件一起传输任何数据。在Windows中使用C#/.NET执行此操作的最佳(最好是最简单)方法是什么? 最佳答案 将好的WM_CLOSE发送到所有实例...Process[]processes=Process.GetProcesses();stringthisProcess=Process.GetCurrentProcess().MainModule

windows - event.getFile().getFileName() 在带有 PrimeFaces 3.5 的 JSF2.0 中返回具有完整路径的文件名

我使用PrimeFacesv3.5在我的windows机器上使用Firefox浏览器上传文件。event.getFile().getFileName()正在返回具有完整路径的文件名,这进一步导致了问题。PrimeFaces在内部使用Apachecommons。我检查了javadoc也,但不再帮助我了。为了克服这个问题,我修改了程序,有点像下面的方式-StringfileName=event.getFile().getFileName();fileName=fileName.substring(fileName.lastIndexOf("\\"));但它并不健壮和可靠。有什么建议吗?

python - 在 Windows 中使用子进程 Popen.send_signal(CTRL_C_EVENT) 时如何达到预期的结果?

根据文档,在Windows中的Python2.7中,您可以发送CTRL_C_EVENT(Python2.7SubprocessPopen.send_signaldocumentation).然而,当我尝试它时,我没有在子进程中收到预期的键盘中断。这是父进程的示例代码:#FILE:parentProcess.pyimportsubprocessimporttimeimportsignalCREATE_NEW_PROCESS_GROUP=512process=subprocess.Popen(['python','-u','childProcess.py'],stdin=subproces

windows - 消费 "Event Tracing for Windows"事件

对this的回答这个问题让我考虑使用“Windows事件跟踪”来满足我们的跟踪需求。我遇到过NTrace,这似乎是从C#代码生成ETW事件的好方法(使用与XP兼容的“经典提供程序”模型)。但是,我无法找到一种简单的方法来使用这些事件-实时查看它们和/或将它们记录到文件中。我找到的唯一方法是NTrace文档中描述的方法:使用仅作为WindowsDDK的一部分提供的工具。在现场出现复杂问题的情况下,我们可能需要要求用户生成包含跟踪的文件。我们不能要求用户下载DDK或执行一些复杂的操作来执行此操作。是否有直接、用户友好的方式将ETW事件记录到文件中?此外,如果某人未以管理员身份运行,是否可以

javascript - socketstream 能否作用于服务器中的 ss.event.on

我正在使用Pub/Sub系统将消息发布到Redis服务器。我将Socketstream0.3与node.js一起使用来收听和处理这些消息。在客户端代码(app.js)中,我可以使用ss.event.on很好地处理这些消息:ss.event.on"portux",(object)->#HandlemessagesofthetypeSwitch3true(toswitch3on)orSwitch2falseifobject.typeis"Switch"sw=object.location#thecmdisnowinthequantityfieldcmd=object.quantityifo

events - 有没有办法使用像redis这样的持久性数据库来延迟特定时间?

我想在两个函数调用之间插入30分钟的延迟,例如:发送fcm/sms后30分钟后发送电子邮件。我正在尝试为此使用Redis,所以我使用节点模块名称bull,它允许我创建一个具有延迟的作业并将其推送到队列中。//发送短信给用户sms(null,{to:phone,content:{msg:"testmessage"},sender:"XYZ"});//在这里我必须添加30分钟的延迟//发送通知给用户fcm(null,{user_ids:userId,message:"restart!!!"});我不想使用setTimeout,因为如果我的应用重新启动,它就不会工作。