zoukankan      html  css  js  c++  java
  • 隐藏控制台console application窗口

    如题,在windows上新建控制台应用程序的时候,怎么才能将console 黑窗口隐藏起来。

    第一种方法:

    ::SetConsoleTitle(_T("test_exe"));
    HWND hwnd=::FindWindow(_T(""),_T("test_exe"));
    ::ShowWindow(hwnd,SW_HIDE);

    不行,试了,不清楚为什么失败….

    imageimage

    窗口句柄抓到了,就是不明白为什么隐藏不了。。。。。。⊙﹏⊙b汗

    image

    两种方法抓到的句柄一模一样,同样的ShowWindow()函数,一个可以,一个不可以………..⊙﹏⊙b汗,好坑。。。。

    第二种:

    用spy++获得cmd窗口的类名称:

    image

    获得console窗口的类名称:ConsoleWindowClass

    image

    OK。

    HWND hwnd;
    hwnd=::FindWindow(_T("ConsoleWindowClass"),NULL);
    ::ShowWindow(hwnd,SW_HIDE);

    通过窗口类名称调用 FindWindow()函数OK,可以隐藏console窗口。

    第三种:

    网上好多都是这种:

    image

    #pragma comment( linker, "/subsystem:"windows" /entry:"wmainCRTStartup"" ) 设置VS的链接器配置。

    通过设置链接子系统为windows修改默认的console属性,并且制定程序的主入口地址:wmainCRTStartup

    (unicode字符集下是wmainCRTStartup,多字节字符组则是mainCRTStartup);通过这种方式同样也可以达到

    隐藏console窗口的效果。

  • 相关阅读:
    Process对象的其他属性:
    python网络编程之开启进程的方式
    python网络编程之进程论
    python网络编程之C/S架构介绍
    面向对象之元类介绍(未完待续)
    面向对象之继承
    面向对象之元类介绍
    python异常处理
    面向对象之内置方法
    面向对象之反射
  • 原文地址:https://www.cnblogs.com/sunbing/p/3881301.html
Copyright © 2011-2022 走看看