# 前言
大家在日常生活中经常会遇到玩游戏被发现的情况,在我们使用电脑的时候,即使将窗口最小化,任务栏上仍然会留下图标,非常容易被发现。
为了解决这个问题,我使用 C++
编写了一个可以一键隐藏窗口的程序,分享给大家!
# 效果
这是游戏窗口的当前的任务栏
按下 ALT
+1
后程序自动获取窗口名
按下 CTRL
+ 1
后程序将窗口及任务栏图标隐藏
# 代码
没有编译环境或者懒得编译的可以直接点击这里免费下载(下载前点个赞吧QwQ)(密码:4b97)
#include <windows.h>
#include <winuser.h>
#include <iostream>
#include <string>
#include <vector>
#include <map>
using namespace std;
typedef vector <int> HOTKEY;
map <HOTKEY, int> AreDown;
bool HotKeyDown(HOTKEY hotkey)
{
for(auto& i : hotkey)
if(!(GetAsyncKeyState(i) & 0x8000))
{
AreDown[hotkey] = false;
return false;
}
if(AreDown[hotkey])
return false;
else
{
AreDown[hotkey] = true;
return true;
}
}
HOTKEY hide = {VK_CONTROL, '1'};
HOTKEY add = {VK_MENU, '1'};
vector <string> hidewindows;
bool ishide;
int main()
{
system("title HIDER");
for(;;)
{
if(HotKeyDown(hide))
{
system("cls");
for(auto& i : hidewindows)
{
cout << i << ' ';
printf("%s\n", i.data());
HWND hWnd = FindWindow(NULL, i.data());
cout << hWnd << endl;
ShowWindow(hWnd, ishide ? SW_NORMAL : SW_HIDE);
}
ishide = ishide ? false : true;
}
if(HotKeyDown(add))
{
system("cls");
HWND hWnd = GetForegroundWindow();
char text[0xFF];
GetWindowTextA(
hWnd,
text,
0xFF
);
string str = text;
hidewindows.push_back(str);
for(auto& i : hidewindows)
cout << i << endl;
cout << endl;
}
}
}
注意事项
- 若要删除请退出并重新添加
- 若窗口已隐藏请不要关闭程序,否则隐藏的窗口将无法恢复显示