控制台程序隐藏方法总结(四种)
学习计算机,往往先从Windows环境下学习编程,学习编程,往往从C学起,学习C,往往又从控制台程序学习,何为控制台,就是那个黑框白字的界面。对于这样一个最初认为奇陋无比而现在认为无所不能的编程平台,有时候需要将界面隐藏起来。那么如何做呢?
方法1:
在头文件下加上一句预处理命令:
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) // 设置入口地址
完整程序为:
#include<windows.h>
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) // 设置入口地址
int main()
{MessageBox(NULL,"Hello","Notice",NULL);return 0;
}
在编译器下运行时仍会出现黑框,但直接运行编译好的exe程序就不会显示黑框了
方法2:
使用API函数隐藏自身窗口,但会有黑框快速闪过的痕迹。代码如下:
#include<windows.h>
int main()
{HWND hwnd;hwnd=FindWindow("ConsoleWindowClass",NULL); //处理顶级窗口的类名和窗口名称匹配指定的字符串,不搜索子窗口。if(hwnd){ShowWindow(hwnd,SW_HIDE); //设置指定窗口的显示状态}MessageBox(NULL,"Hello","Notice",MB_OK);system("pause");return 0;
}
运行效果:在编译器下运行和直接运行exe文件,都会有黑屏闪烁一下。
方法3:
一个人自身的力量毕竟有限,所有有时候需要借助外力,自己办不到的可以让好朋友帮忙,程序也同样如此,内部实现不了的功能可以让外部程序帮自己实现。
再用C\C++写一个引导程序,让引导程序隐藏调用该程序。假设要隐藏运行记事本程序,代码如下:
#include<windows.h>
int main()
{WinExec("notepad.exe",SW_HIDE); //隐藏执行其他程序return 0;
}
运行效果:完全隐藏
方法4:
既然思路以及不再局限到程序自身,那么其实就有了很多很多中外部隐藏调用的方法,只要你的知识面足够宽那么解决方法就会足够多。比如,C#、Java、Python、Ruby、VB、Delphi等等都可以。最后再用VBScript写一个吧。代码如下:
set objShell=wscript.createObject("wscript.shell")
iReturn=objShell.Run("你的程序.exe", 0, FALSE) 'Run()
'第一个参数是你要执行的程序的路径,亦可传参
'第二个参数是窗口的形式,0后台运行;1正常运行;2最小化;3最大化;缺省的话表示正常运行
'第三个参数是表示这个脚本是等待还是继续执行,如果设为了True,脚本就会等待调用的程序退出后再向后执行。
运行效果:完全隐藏
控制台程序隐藏方法总结(四种)相关推荐
- python爬虫详细步骤-Python爬虫的两套解析方法和四种爬虫实现过程
对于大多数朋友而言,爬虫绝对是学习 python 的最好的起手和入门方式.因为爬虫思维模式固定,编程模式也相对简单,一般在细节处理上积累一些经验都可以成功入门.本文想针对某一网页对 python 基础 ...
- c语言怎么改变程序的图标,VC6.0 控制台程序添加图标的两种方法
如何给C控制台程序添加图标说来很惭愧的问题,C语言也算学了很长一阵子,目前还是停留在控制台的水平,今天用着用着突然想给程序换个图标,却找不到在哪设置,又没窗体,在哪弄呢?百度N久,找到如下两种解决方案 ...
- HTML和CSS隐藏元素的四种方法
第一种:display:none 特点:不占据屏幕空间 显示:display:block <!DOCTYPE html> <html lang="en">& ...
- C# 控制台程序 隐藏控制台窗口
在某些项目中,需要采用控制台程序,但是又不需要通过dos窗口进行交互,同时打算隐藏掉难看的控制台窗口.实现的方法很多,有的是修改链接命令.我采用的方法略有些麻烦,首先是给窗口命名,之后找到该窗口指针, ...
- 【Python基础】Python爬虫的两套解析方法和四种信息提取方式
Python爬虫 Author:Iouwill Machine Learning Lab 分享一篇往日旧文章,非常实用. 对于大多数朋友而言,爬虫绝对是学习python的最好的起手和入门方式.因为爬虫 ...
- C++计算耗时方法(四种方法)
前言 本博客将给出四种在 C++ 中可用于 计算算法耗时 的方法. 方法(推荐方法4) 1(返回的是CPU时钟计时单元,每秒为1000个时钟周期)(单位为s,可精确到小数点后三位) #include ...
- 【小家java】交换两个变量数值的方法(四种方法)
相关阅读 [小家java]java5新特性(简述十大新特性) 重要一跃 [小家java]java6新特性(简述十大新特性) 鸡肋升级 [小家java]java7新特性(简述八大新特性) 不温不火 [小 ...
- 隐藏div的四种方式
隐藏div是指所选择的div不显示在页面上,但是隐藏后有两种效果 1.隐藏过后的div的位置还是被占用了 2.隐藏过后的div的位置没有被占用 下面看几种隐藏div的方法 <!DOCTYPE h ...
- 简单理解判断类型的方法(四种)
判断类型有四种方法(不全但是相对来说挺全了,而且也够用了) 1.typeof 2.instanceof 3.constructor 4Object.prototypy.tostring.call() ...
最新文章
- c++ map 的基本操作
- python中figsize什么意思_matplotlib 设置图形大小时 figsize 与 dpi 的关系
- sql server 的 money类型
- android Q版本外部存储问题以及获取空间大小问题
- Angular 依赖注入的一个常见错误 NullInjectorError, No provider for XXX
- innodb存储引擎 - 锁
- 无线网络,把我整惨了。求助各位了。
- 数据结构和算法 D3
- win10wifi多了数字_win10系统电脑查看wifi密码是多少的方法
- 违反计算机信息网络国际联网安全,给你普及一下为了加强对计算机信息网络国际联网的安全保护,维护公共秩序和社会稳定,早在1997年12月30日【刁爱青吧】_百度贴吧...
- android真机调试
- 安卓手机投屏软件_适合智能电视手机投屏的软件
- 2007舜宇杯ACM程序设计浙江省赛结果
- MATLAB-视频的前景目标提取
- BZOJ2668:[CQOI2012]交换棋子——题解
- 【MFC】学习笔记:文件操作类——CFile
- Golang: glog 的使用
- Aurora8B10B IP使用 -05- 收发测试应用示例
- 影流之主——stm32OLED显示一张图片方法基于战舰
- aardio - 阴影渐变文字
热门文章
- java 线程类 通信_Java 中利用管道实现线程间的通讯
- burpsuite csrf攻击_WEB安全之CSRF
- Callable创建多线程
- 在下列计算机应用项目中,属于过程控制应用领域的是,计算机基础试题.ppt
- mp4v2 写mp4 java_使用mp4v2将H264+AAC合成mp4文件
- ad20中怎么多选操作改层_在操作系统中CPU是怎么调度的
- hp 导出日志 远程管理卡_惠普服务器远程管理卡安装详解
- 三点外接圆_故地重游伪切圆——伪外接圆的基本性质
- leetcode面试题 02.08. 环路检测
- leetcode300 最长上升子序列