c++ - 无窗口应用

标签 c++ visual-c++

我要做一个任务,找出在后台运行的进程/exe/application。 即:该进程正在运行,但没有任何 UI/窗口可见,尽管它是一个 Windows GUI 应用程序。我想阅读 EXEheader。 header 包含一个名为“子系统”的字段,应用程序将在其下运行以及它需要的接口(interface)类型。 但它返回 Windows GUI,确实如此。但我希望 teo 检测该应用程序是否有任何窗口。此应用程序也不是一项服务,就好像它是一项我可以轻松阅读信息的服务。 如果你们中的任何人能对所提出的问题有所了解,我将很高兴。

温暖的问候.. 萨尔夫

最佳答案

如果我正确理解你的问题,你想知道正在运行的应用程序是否有任何可见的窗口。

为此,您可以调用 EnumWindows获取所有顶级窗口。对于每个窗口,请调用 GetWindowThreadProcessId获取进程 ID 和 GetWindowLong(hwnd, GWL_STYLE) 获取窗口样式。测试 WS_VISIBLE 的样式以查看窗口是否可见。遍历所有窗口并查看您的进程是否拥有可见窗口。如果你没有进程 ID,你可以用 EnumProcesses 得到它们。 .

关于c++ - 无窗口应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1784516/

相关文章:

c++ - linux下c/c++的加密库和压缩库

c++ - std::array 的内联初始化有什么问题?

c++ - 是否可以将项目直接从 Visual Studio 导出到它自己的文件夹中?

c++ - 指向对象的指针数组返回乱码

C++——DirectWrite : Load font from file at runtime

c++ - 线程数和每秒帧数有什么关系?

c++ - 使用虚拟继承和委托(delegate)构造函数在构造函数中崩溃

c++ - 在xml中获取子节点的名称将返回#text C++

c++ - R 崩溃/中止使用带有 NA 输入的 Rcpp

c++ - VC++ 中的文字类型