吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2906|回复: 23
收起左侧

[原创工具] 解决异常弹回桌面检测软件

[复制链接]
罗萨 发表于 2023-8-21 20:34
有时候游戏全屏、窗口模式,或者办公软件

莫名其妙弹回桌面或者切换为非当前窗口
就可以用这个软件了
原理:通过检测当前窗口进程,路径,发现真凶是谁

使用方法:运行后挂到后台,等被弹窗了,就看看是哪个进程导致的

QQ截图20230821203032.jpg
源码:
[Python] 纯文本查看 复制代码
import time
import win32gui
import win32process
import win32api
import win32con
import win32security
import psutil
def get_active_window_process_name():
    last_fore = None
 
    while True:
        fore = win32gui.GetForegroundWindow()
        if fore != last_fore:
            last_fore = fore
 
            tid, pid = win32process.GetWindowThreadProcessId(fore)
 
            try:
                process = psutil.Process(pid)
                process_name = process.name()
                username = process.username()
                process_path = process.exe()
            except Exception as e:
                process_name = "N/A"
                username = "N/A"
                process_path = "N/A"
 
            print(f"当前窗口名称: {process_name}, 系统用户名: {username}, 窗口路径: {process_path}")
 
        time.sleep(0.01)
 
if __name__ == "__main__":
    get_active_window_process_name()


成品软件下载

https://wwhk.lanzouj.com/iqs8R1611t0j





免费评分

参与人数 6吾爱币 +13 热心值 +5 收起 理由
pbgz + 1 + 1 谢谢@Thanks!
npc6699 + 1 我很赞同!
onlyclxy + 3 + 1 我很赞同!
风之暇想 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
BLUE7777777 + 1 一段代码分两区发,可以这样水?https://www.52pojie.cn/thread-1819312-1-.
jokerdin + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

BOSSX 发表于 2023-8-21 23:59
好东西 感谢分享 支持
shpe 发表于 2023-8-22 08:18
#include <iostream>
#include <windows.h>
#include <psapi.h>
#include <string>
using namespace std;
HWND previousForegroundWindow = nullptr;
HWND 自身窗口句柄;

bool GetProcessNameFromHWND(HWND hwnd, string& processName) {
    DWORD processId;
    if (GetWindowThreadProcessId(hwnd, &processId)) {
        HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, processId);
        if (hProcess) {
            char moduleName[MAX_PATH];
            if (GetModuleFileNameExA(hProcess, NULL, moduleName, MAX_PATH)) {
                processName = moduleName;
                CloseHandle(hProcess);
                return true;
            }
            CloseHandle(hProcess);
        }
    }
    return false;
}

void CALLBACK TimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime) {
    HWND currentForegroundWindow = GetForegroundWindow();
    string characters;
    if (currentForegroundWindow != previousForegroundWindow && currentForegroundWindow !=自身窗口句柄 && currentForegroundWindow != 00000000) {
        char title[256];
        GetWindowTextA(currentForegroundWindow, title, sizeof(title));

        char className[256];
        GetClassNameA(currentForegroundWindow, className, sizeof(className));
        string processName;
        GetProcessNameFromHWND(currentForegroundWindow, processName);
        std::cout << "窗口标题:" << title << std::endl;
        std::cout << "窗口类名:" << className << std::endl;
        std::cout << "进程路径:" << processName << std::endl;
        for (int i = 0; i < processName.length() +10; ++i) {
            characters += '-';
        }
        std::cout << characters << std::endl;
    }
    previousForegroundWindow = currentForegroundWindow;
}

int main() {
    std::cout << "www.52pojie.cn"  << std::endl;
    自身窗口句柄 = GetConsoleWindow();
    SetTimer(NULL, 0, 1, TimerProc);

    MSG msg;
    while (GetMessage(&msg, NULL, 0, 0)) {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }

    return 0;
}

评论好像发不了附件,如果你有C++的话,编译一下,这个只有十几kb

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
evea + 1 + 1 谢谢@Thanks!
onlyclxy + 1 + 1 我很赞同!

查看全部评分

xiaopeng128 发表于 2023-8-21 20:49
BLUE7777777 发表于 2023-8-21 21:25
一段代码分两区发,可以这样水?
https://www.52pojie.cn/thread-1819312-1-1.html
骑着摩托的羊 发表于 2023-8-21 21:31
哇,对于小白来说,这可是个大杀器啊。
id3 发表于 2023-8-21 21:38
卸载掉多余软件就不弹了
 楼主| 罗萨 发表于 2023-8-21 21:42
BLUE7777777 发表于 2023-8-21 21:25
一段代码分两区发,可以这样水?
https://www.52pojie.cn/thread-1819312-1-1.html

这次是编译了成品
 楼主| 罗萨 发表于 2023-8-21 21:43
id3 发表于 2023-8-21 21:38
卸载掉多余软件就不弹了

你不会发现你有用的软件他在弹,不好说的
MenGQiuGZ 发表于 2023-8-21 22:08
感谢楼主分享,标记一下,下载来试试看
头像被屏蔽
moruye 发表于 2023-8-21 22:14
提示: 作者被禁止或删除 内容自动屏蔽
shpe 发表于 2023-8-21 22:46
单纯检测置顶窗口的话,6.6m的体积就显得过于臃肿了!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-24 04:21

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表