草庐IT

wide-winapi

全部标签

C++ - WinAPI 获取所有连接的 USB 设备的列表

我正在尝试创建一个程序来对所有连接的USB设备及其端口GUID进行分类。我找到了一个如何从连接的输入设备获取所有信息的示例:#include#include//Namespaceusingnamespacestd;//Mainintmain(){//Programcout我试图转换此代码以获取所有连接的USB设备,但失败了。所以我的问题是收集我正在寻找的数据的最佳方式是什么? 最佳答案 如果您想要所有USB设备,而不仅仅是“输入”设备,那么您需要使用与设备管理器相同的API。例如,设备管理器显示的所有设备都可以在SetupDiGet

winapi - 在 Windows 中将焦点设置在控制台上?

是否可以在Windows中将焦点设置在控制台应用程序上?SetFocus看起来很有前途,但它需要一个HWND,我不知道控制台应用程序是否有一个。 最佳答案 使用GetConsoleWindow功能。 关于winapi-在Windows中将焦点设置在控制台上?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3223688/

c - WinAPI 获取鼠标光标图标

我想获取Windows中的光标图标。我认为我使用的语言在这里不是很重要,所以我将只编写带有我尝试使用的WinAPI函数的伪代码:c=CURSORINFO.new(20,1,1,POINT.new(1,1));GetCursorInfo(c);#providescorrectlyfilledstructurewithhCursorDrawIcon(GetWindowDC(GetForegroundWindow()),1,1,c.hCursor);所以这部分工作正常,它在事件窗口上绘制当前光标。但这不是我想要的。我想得到一个像素数组,所以我应该在内存中绘制它。我正在尝试这样做:hdc=Cr

c - WinAPI,发布/发送具有 64 位值的消息(wParam、lParam)

我编写了一个使用MFC的程序,因此使用WinAPI函数,如PostMessage。它主要只是一个窗口线程和一个网络客户端线程。我创建了自己的Message,到目前为止它运行良好。稍微解释一下程序:我编写了一个客户端,它通过网络获取消息,对其进行解码,然后需要将消息发送到显示消息值的窗口。所有这些都有效-使用32位值。这肯定是某种不正确使用PostMessage函数的原因,因为lParam和wParam通常是指针。但我不能只使用指针,因为我的客户端应用程序和我的Window应用程序是两个不同的线程,客户端应用程序中的值会尽快被删除。(客户端需要调用服务端的循环请求)#defineDEVI

winapi - Win32 API 提供的数据结构?

我正在使用Win32API开发程序。Windows是否提供任何数据结构,如单链表、树等作为Win32API的一部分?如果是这样,请告诉我如何使用它们(至少我需要包含标题才能使用它们)。我已经听说有LIST_ENTRY。我可以从用户模式使用它吗?提前致谢。 最佳答案 Win32API有一个singlylinkedlist执行。我认为API中没有任何其他数据结构。但是,单向链表是为线程间队列设计的,而不是一般的算法数据处理。最好使用您的语言自己的通用数据结构,它不会那么专业(例如,C++的STL数据结构和相关算法比系统API中的任何内容

c++ - MinGW,g++,winapi,winsdk,迷茫中

我试图调用使用g++(mingw)编译的GetPhysicalCusrorPos(),结果发现我的sdk已过时。所以我去下载了最新的带有最新w32api的MinGW,但是标题中仍然缺少这个功能......所以我开始谷歌搜索以下问题,只是越来越迷失:_当您想使用WindowsAPI而使用MinGW时,w32api是实现它的唯一好方法吗?_WindowsAPI、windowsSDK、w32api、MinGW和w32api之间究竟是什么关系???_gnu工具(MinGW、gcc、g++等)可以像VisualC/WinSDK(cl.exe)一样做吗???请不要以为我没有寻找答案,我确实搜索过,

windows - 触发 Windows UAC 提示时是否有 WinAPI 消息?

当UAC提示被触发时(不是由我的应用程序触发),它会破坏某些东西(我相信它是Direct3D设备句柄),这会导致屏幕显示最后绘制的帧而不是移动图像。我没有编写显示3D图像的代码(它是一个插件),但在UAC提示后,如果我调整窗口大小图像返回。有没有办法检测UAC提示关闭,以便我可以调用刷新显示的代码来进行补偿? 最佳答案 UAC提示通常显示在安全桌面上,因此伴随着切换到不同的桌面(参见SwitchDesktop)。尽管您可以关闭此选项并且不会让UAC提示导致桌面切换,但出于安全原因它默认处于打开状态,这几乎可以肯定是您看到任何视觉中断

c++ - 什么是 BOOL WINAPI 返回类型

我在C++中遇到了一个函数定义,如下所示:(source)BOOLWINAPIGetProcessMemoryInfo(_In_HANDLEProcess,_Out_PPROCESS_MEMORY_COUNTERSppsmemCounters,_In_DWORDcb);这里的返回类型是什么。是BOOLWINAPI还是BOOL?这个类型在哪里定义的? 最佳答案 BOOL是int的类型定义。WINAPI是一个宏,指定函数的调用约定(__stdcall、__cdecl等)。typedefintBOOL;#defineWINAPI__std

c++ - 使用 WinAPI 进行夏令时和 UTC 到本地时间的转换

我正在尝试查看从本地时间转换为UTC时间以及反之亦然的WindAPI是否符合夏令时。例如,我们以LocalFileTimeToFileTime为例应用程序接口(interface)。它的描述指出:LocalFileTimeToFileTimeusesthecurrentsettingsforthetimezoneanddaylightsavingtime.Therefore,ifitisdaylightsavingtime,thisfunctionwilltakedaylightsavingtimeintoaccount,evenifthetimeyouareconvertingisi

c++ - 如何在 GUI 窗口中使用 WinApi (GDI) 在 C++ 中设置鼠标单击像素?

我尝试通过鼠标点击来设置像素,但点击时没有任何反应。这是我的部分代码。首先,我在WM_SIZE中控制窗口大小的变化。比起第一次,当我想通过鼠标设置像素时,我得到窗口的宽度和高度,然后将窗口的内容复制到内存HDC和HBITMAP(在存储窗口中)(HBITMAP大小等于(宽度,高度))。事实上,我只复制到内存中的清除窗口。在任何情况下,我都将像素设置为内存DC。在下一个WM_PAINT消息处理中,我将内存DC绘制到屏幕。.....caseWM_SIZE:{CheckWidthHeight();break;}caseWM_MBUTTONDOWN:{if(firstTimeDraw){Chec