C语言实现控制台窗口隐藏

简述

  通过以下两个函数来实现窗口的隐藏效果。不仅仅只用于控制台窗口,其他的也可以。(代码在底部)

FindWindow函数

功能

  FindWindow函数的功能是获取一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。另外,这个函数不查找子窗口,而且在查找时不区分大小写

函数原型

头文件是windows.h

    HWND FindWindow(LPCTSTR IpClassName,LPCTSTR IpWindowName);

参数

  • IpClassName
      指向一个以NULL字符结尾的、用来指定类名的字符串,或一个可以确定类名字符串的原子。如果这个参数是一个原子,那么它必须是一个在调用此函数前已经通过GlobalAddAtom函数创建好的全局原子。这个原子(一个16bit的值),必须被放置在lpClassName的低位字节中,lpClassName的高位字节置零。可以简单的理解为窗口的类名
      如果该参数为NULL时,将会寻找任何与lpWindowName参数匹配的窗口。
  • Ipwindowname
      指向一个以NULL字符结尾的、用来指定窗口名(即窗口标题)的字符串。如果此参数为NULL,则匹配所有窗口名。

  注:在搜索的时候两个参数不一定都要知道,但至少知道其一。

返回值

  如果函数执行成功,则返回值是拥有指定窗口类名或窗口名的窗口的句柄。否则返回值为 NULL 。

ShowWindow函数

功能

  设置指定窗口的显示状态。

函数原型

头文件是windows.h

    BOOL ShowWindow(HWND hWnd, int nCmdShow)

参数

  • hWnd
      指定窗口的句柄

  • nCmdShow
      指示窗口如何显示。如果发送应用程序的程序提供了STARTUPINFO结构,则应用程序第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。
    该参数可以是下表之一

代号含义nCmdShow值
SW_HIDE隐藏窗口并激活其他窗口0
SW_MAXIMIZE最大化指定窗口3
SW_MINIMIZE最小化指定窗口6
SW_RESTORE激活并限制窗口,如果窗口最大化或最小化,则系统将窗口恢复到原来的尺寸和位置。在恢复最小化窗口时,应用程序应该指定这个标志9
SW_SHOW在窗口原来的位置以原来的尺寸激活和显示窗口5
SW_SHOWDEFAULT以STARTUPINFO结构中指定的SW_FLAG标志设定显示状态10
SW_SHOWMINIMIZED激活窗口并将其最小化2
SW_SHOWMAXIMIZED激活窗口并将其最大化3
SW_SHOWMINNOACTIVE窗口最小化,激活窗口仍然维持激活状态7
SW_SHOWNA以窗口原来的状态显示窗口。激活窗口仍然维持激活状态8
SW_SHOWNOACTIVATE以窗口最近一次的大小和状态显示窗口。激活窗口仍然维持激活状态4
SW_SHOWNORMAL激活并显示一个窗口。如果窗口被最小化或最大化,系统将其恢复到原来的尺寸和大小。应用程序在第一次显示窗口的时候应该指定此标志1

返回值

  如果窗口之前可见,则返回值为非零。如果窗口之前被隐藏,则返回值为零。

示例

#include<windows.h>
int main()
{
	HWND hwnd;
	hwnd=FindWindow("ConsoleWindowClass",NULL);	
	if(hwnd)
	{
		ShowWindow(hwnd,SW_HIDE);//设置指定窗口的显示状态
	}
	MessageBox(NULL,"控制台已隐藏","提示",MB_OK);
	system("pause");
	return 0;
}

小提示:控制台的窗口被隐藏了,就得在任务管理器里面把它关掉,不然就不能再次运行了

  • 9
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值