草庐IT

消息键

全部标签

windows - 仅消息窗口可以接收 WM_QUERYENDSESSION 吗?

在程序的调试版本中,我创建了一个可见窗口,WM_QUERYENDSESSION消息由其WNDPROC接收。在发布版本中,窗口应该是纯消息的,所以我在调用CreateWindowEx()时将HWND_MESSAGE指定为hWndParent。不幸的是,我再也没有收到WM_QUERYENDSESSION消息。WM_QUERYENDSESSION是那些广播消息之一吗mentionedhere?Amessage-onlywindow[...]doesnotreceivebroadcastmessages. 最佳答案 MSDN给出了“仅消息窗

windows - 什么可能导致错误消息 'Target "1"does not exist in the project "xxx”。在 Windows 上运行 Ant?

我在Windows2003Server上使用ant.bat(在Ant1.7.1中)在build.xml文件中构建all目标。(我在错误消息中用“xxx”替换了该文件中的项目名称。)构建成功,但结束时:2009-06-1017:26:03|all:2009-06-1017:26:03|2009-06-1017:26:03|BUILDFAILED2009-06-1017:26:03|Target"1"doesnotexistintheproject"xxx"....并返回非零错误代码。我在build.xml中搜索任何可能导致此错误的内容均未成功。(当然,没有目标“1”,也没有任何可能解析“

windows - 为什么 TVM_GETITEM 消息在 comctl32.ocx 或 mscomctl.ocx TreeView 上失败?

我编写了一个函数,它可以生成TreeView项的文本,即使TreeView在远程进程中也是如此。该函数在远程进程中分配两个内存块,填充TVITEM结构(已复制到远程进程中),发送TVM_GETITEM消息,最后将第二个远程内存块的内容读回本地缓冲区。这是代码:std::stringgetTreeViewItemText(HWNDtreeView,HTREEITEMitem){DWORDpid;::GetWindowThreadProcessId(treeView,&pid);HANDLEproc=::OpenProcess(PROCESS_VM_OPERATION|PROCESS_VM

windows - 为什么有些窗口收不到 Windows 消息

在VisualStudio上使用Spy++工具,我可以看到像桌面或资源管理器(文件资源管理器)之类的窗口收到WM_消息,但像Firefox或VisualStudio这样的窗口不接收消息。为什么有些人能收到消息而有些人没有。(对于WM_消息,我指的是WM_MOUSELEAVE或WM_SETCURSOR) 最佳答案 Spy++需要注入(inject)一个钩子(Hook)来监Windows口消息。为此,钩子(Hook)函数的位数需要与拥有窗口的进程的位数相匹配,因此您应该使用32位版本的Spy++来监视32位应用程序的窗口,以及64位版本

windows - 从我的应用程序发送消息 Ctrl+Alt+Del

我想在MFC中编写一个小实用程序,它将Ctrl+Alt+Del消息发送到操作系统。任何人都可以帮助我如何实现这一目标?我试过:::PostMessage(HWND_BROADCAST,WM_HOTKEY,0,MAKELONG(MOD_CONTROL|MOD_ALT,VK_DELETE));但这行不通。我想发送Ctrl+Alt+Del而不是调用TaskMgr.exe。此外,它适用于我的本地操作系统(WindowsXPServicepack2)。基本上我想使用这个应用程序来锁定我的机器并安排一些操作以及锁定。 最佳答案 这不是您可以模拟

c++ - Windows 消息异常

可能只是某种粗略的疏忽,但我在消息循环中没有收到任何WM_SIZE消息。但是,我确实在WndProc中收到了它们。我认为Windows循环将消息发送给WndProc?LRESULTCALLBACKWndProc(HWNDhWnd,UINTmessage,WPARAMwParam,LPARAMlParam){switch(message){//thismessageisreadwhenthewindowisclosedcaseWM_DESTROY:{//closetheapplicationentirelyPostQuitMessage(0);return0;}break;caseWM_

c++ - 如何使用 C++ 和 Windows API 将击键/消息发送到 Windows 7?

例如,程序是否可以向Windows7(运行它的操作系统)发送击键或消息,以模拟用户物理按下键盘上的Windows键的效果?在C++中,使用WindowsAPI? 最佳答案 SendInput功能已经存在很长时间了,应该可以满足您的需要。 关于c++-如何使用C++和WindowsAPI将击键/消息发送到Windows7?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/919010

c++ - 如何判断一个线程是否有消息队列?

有什么方法可以通过threadId判断一个线程是否有消息队列?基本上有一些windowsapi只有在线程有消息queue.window时才工作 最佳答案 您可以使用带有线程ID的PostThreadMessage。如果PostThreadMessage返回false且GetLastError返回ERROR_INVALID_THREAD_ID,则线程ID无效或线程没有消息队列。更多信息http://msdn.microsoft.com/en-us/library/ms644946(VS.85).aspx

windows - PeekMessage() 需要 1-2 毫秒来检索 WM_MOUSEMOVE 消息?

我在这里看了很多关于PeekMessage和WM_MOUSEMOVE的帖子,但到目前为止我还没有发现任何与性能相关的内容。长话短说;我正在做PC游戏开发,昨天我注意到我可以将我们的应用程序从稳定的500+FPS(在菜单中)提升到个位数FPS(低至6),只需快速移动鼠标即可。经过几个小时的挖掘和分析,我发现来源是PeekMessage()。不是该消息的DispatchMessage(),只是偷看。我测量了单独调用该函数的频率非常频繁(每帧多次),时钟频率为1-2毫秒。如果将其与快速鼠标移动相结合,则每渲染一帧,消息队列的传输可能会花费我1000-2000毫秒以上的时间。听起来很荒谬,但实

windows - 向除 Microsoft Windows 2012 Server 上的一个用户之外的所有用户发送消息

我们有一个MicrosoftWindows2012服务器,我们会在固定的时间间隔自动运行更新。我们想向登录用户显示一条消息,给他们几分钟,然后再注销。我们正在使用内部自动化工具。我在网上找到了一个批处理文件,它会向所有用户发送一条消息,然后将他们注销。这工作正常,除了我们不希望消息显示给一个特定的用户,比如“userX”。下面是脚本:@ECHOOFFchoice/T:60/DN/N>Nulmsg*Youwillbedisconnectedin1minute!Pleaselogoffnow!choice/T:60/DN/N>Nulquerysession>C:\SchedTasks\se