精华内容
下载资源
问答
  • 2021-09-14 21:15:29
    • 系统:win10
    • IDE:VS2019

    说明

    调试动态库代码时没有控制台来显示日志,用以下代码可以开启控制台

    	AllocConsole();
    	freopen("CONOUT$", "a+", stdout);
    
    更多相关内容
  • 在windows目录的右键菜单中添加“打开控制台”菜单项,单击能够打开控制台程序,并能自动切换到当前目录。
  • 阻止用户打开控制台

    2021-09-29 20:04:19
    首先得知道用户能通过什么方式打开控制台,一个是通过键盘事件,一个是鼠标右键。 那就通过禁止键盘的f12事件: 漏洞:浏览器设置其他快捷键打开控制台,没了。 禁止右键事件: 识别打开 这时候问题来啦,有个聪明...

    实现

    一、阻止打开

    首先得知道用户能通过什么方式打开控制台,一个是通过键盘事件,一个是鼠标右键。
    那就通过禁止键盘的f12事件:
    在这里插入图片描述
    漏洞:浏览器设置其他快捷键打开控制台,没了。

    禁止右键事件:
    在这里插入图片描述

    识别打开

    这时候问题来啦,有个聪明的小伙说那我先打开控制台,再进网站呢。
    好问题,那就得让程序判断你有没有打开控制台:

    通过浏览器宽高和可视宽高对比

    这种是通过获取浏览器的可视区域宽高(整个浏览器)window.innerWidth / window.innerHeight和浏览器中项目显示的宽高(包括书签栏)window.outerWidth / window.outerHeight之间的差值来判断的,由于书签栏可能没显示,所以这个差值是有容错范围的,所以这个判断并不太准确,一般为200差值内就算没打开。
    在这里插入图片描述
    漏洞:这里的漏洞就特别大了,如果打开toggle device toolbar,或者设置控制台从新窗口打开,这个方法就无效了。实际上很多小小付费网站都是通过这种方法来阻止用户打开f12的。
    在这里插入图片描述

    通过控制台特性
    1、 改写对象toString

    这个方法好像只有给予chrome内核有效(我只在firfoxchromeie测试过):如果控制台输出的是对象,则保留对象的引用,每次打开控制台的时候,如果对象类型是function、date等(以前还有regexp,现在已失效),都会重新调用一下对象的toString()方法,将返回结果打印到控制台上。

    经过测试:

    步骤一步骤二步骤三结果
    声明对象重写toString打印对象toString会在开始时多运行一次,所以可以使用一个计数器来判断哪次有效
    声明对象打印对象重写toString如果初始化时控制台是开启状态,会检测不到这一次的状态
    声明对象重写toString打印对象(这里的对象不做为第一个参数)可以成功监测每一次控制台状态

    在这里插入图片描述

    漏洞:只有对chrome内核的浏览器生效;或者重写console来处理,在地址栏输入以下代码再打开目标页面:
    在这里插入图片描述
    不过这个方法也可能失效,比如项目重写了console方法,使用_console来实现打印,也有可能就不是用console.log来打印的,可能用console.infoconsole.error

    2、监听dom属性

    浏览器在打印dom元素的时候,如果控制台处于关闭状态,不会获取元素属性,但是如果控制台处于开启状态,就会自动获取dom属性,从而触发监听事件
    在这里插入图片描述
    漏洞:不支持firfox

    3、通过时间差

    可以通过在代码里面加上debugger断点,这样要是用户打开控制台代码会在断点停止执行,会有一个时间差,有点烦的是由于项目eslint规定不能写debugger,还要加上no-debugger的注释
    在这里插入图片描述
    漏洞:如果设置浏览器断点不停止;或者有些项目在webpack配置drop_debugger: true,那debugger也会无效;

    通过debugger这种方式还有一种方法是通过调用栈溢出这种思路来实现,如果打开控制套并设置断点不停止,这时候会因为一直调用某个方法导致调用栈溢出。所以,们可以设置一个间隔2000ms的定时器来不断执行某个方法,这样当控制台开启时,不论是否取消debugger调式,都会使页面卡住:
    在这里插入图片描述
    在这里插入图片描述

    总结

    我个人针对阻止用户打开控制台是结合2和3一起使用的。
    虽然前端谈安全本身就是个伪命题,但是为什么还要做呢?
    个人觉得,第一是能有效的提升前端被破解的门槛,二是能从安全的角度对项目进行思考优化。
    反正,我做安全首先都会去实践尝试其他网站的防范方法,并尝试破解,成功的话还是挺有成就感的。

    展开全文
  • Qt打开控制台输出

    2022-03-05 14:54:28
    Qt打开控制台输出 选择项目 选择Run、勾选Run in terminal 在pro文件中输入CONFIG +=console thread 删除掉build文件夹再重新编译即可。
    更多精彩内容
    👉个人内容分类汇总 👈

    Qt打开控制台输出

    1. 选择项目

      在这里插入图片描述

    2. 选择Run、勾选Run in terminal

      在这里插入图片描述

    3. 在pro文件中输入CONFIG +=console thread

    4. 删除掉build文件夹再重新编译即可。

    展开全文
  • Steam如何打开控制台

    千次阅读 2022-05-25 10:41:13
    Steam如何打开控制台

    1、运行Steam
    2、Win+R打开如下界面
    在这里插入图片描述
    3、在命令窗口输入:Steam://nav/console,点击确定
    在这里插入图片描述

    4、操作完毕后就可以在Steam上看见console选项卡了!
    在这里插入图片描述

    展开全文
  • 以上这篇解决pyinstaller打包发布后的exe文件打开控制台闪退的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。 您可能感兴趣的文章:pyinstaller打包程序exe踩过的坑...
  • 监视浏览器是否打开控制台 之前朋友在讨论中提出问题:”怎么监视浏览器控制台是否打开“,浏览器没有对应的api,当时第一个想法就是监视窗口大小,后面反应过来用户提前打开了呢?当然下面这个方法也不能监视用户...
  • vs2022怎么打开控制台

    千次阅读 2022-03-01 10:52:03
    vs2022怎么打开控制台? 打开visual studio 2022,选择菜单 视图》输出 显示输出来源(S): 选择生成
  • 按Alt+F2快捷键打开命令输入框,输入“gnome-terminal”命令,然后按回车键即可打开终端。 后续再次打开按Alt+F2就会有历史记录,点击“gnome-terminal”即可。
  • 需求:要求用户不能在网页上打开控制台查看源代码,不能查看接口请求---开发人员可以打开控制台 解决问题思路: 1,禁用所有打开控制台的方法 2,在定时器里判断浏览器窗口宽高和页面宽高的差值,来断定用户有没有打开...
  • 在mac的谷歌浏览器中,打开控制台有一到两秒钟的延迟,或者更久事件,如何解决呢? 打开控制体啊 下拉找到语言 把uk 切换为us 4. 关闭控制台,搞定 重新打开控制台再试试,倍儿快!!! ...
  • 调试控制台:command+shift+Y 终端: control+`
  • idea打开视图窗口的方式和我们以前使用的eclipse还是有很多共通之处,只要是视图、窗口问题的显隐、调整都问题都可以去找【View】。
  • QT 打开控制台输出

    2020-11-03 09:49:58
    PRO文件里添加以下代码: CONFIG += console 便可以在控制台打印cout的信息
  • 安卓chrome打开控制台Google Chrome browser provides a JavaScript Console. This console is directly connected to the currently active DOM or web page where it can use this page functions, libraries, and...
  • 手机调试打开控制台方法vconsole

    千次阅读 2022-01-06 16:44:37
    手机调试网页,看不到控制台,无法获取接口相关信息,引入vconsole可以实现 代码演示: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <...
  • js里面有使用console.log()进行调试,去除即可
  • 目录 phpstorm如何打开控制台​ 或者点击浏览器(前提配置php 环境,apache )​ phpstorm如何打开控制台 或者点击浏览器(前提配置php 环境,apache )
  • 微信打开控制台 log

    千次阅读 2020-04-27 17:32:13
    以为自己只是不想找对象,后来发现我tm是根本找不到 前端QQ群: 981668406 在此附上我的QQ: 2489757828 有问题的话可以一同探讨 ...直接在微信里面打开地址: http://debugx5.qq.com 设置里面的信息,勾选相关条件 ...
  • C#窗体程序打开控制台

    千次阅读 2020-10-21 13:32:18
    public Form1() { InitializeComponent(); } [System.Runtime.InteropServices.DllImport("kernel32.dll", SetLastError = true)] [return: System.Runtime.InteropServices.MarshalAs(System.Runtime....
  • 打开控制台

    2013-08-10 22:12:18
    从当前选中的目录打开控制台。并且自动cd到当前选中的目录。
  • 打开控制台:Ctrl + Alt + F5 关闭控制台:Ctrl + Alt + F1
  • vs2015 调试时打开控制台

    千次阅读 2021-02-04 15:49:51
    打开项目属性->通用属性->链接器->系统->子系统,在其中选择即可切换。
  • 小程序weview嵌套h5后,可直接在开发工具打开h5的控制台,如下图,开发工具会识别,如果是h5页面,在页面的右下角会有一个类似爬虫的标识,点击即可打开h5的控制台,而原生页面是没有的 图1:h5页面的开发工具 图...
  • linux下使用docker安装rabbitmq后,无法访问控制台,已解决 一、安装rabbitmq,并启动 1.拉取镜像 docker pull rabbitmq 2.启动容器 docker run \ -e RABBITMQ_DEFAULT_USER=root \ -e RABBITMQ_DEFAULT_PASS=...
  • VScode 插件打开控制台的快捷键 一、打开控制台 command + option + I 二、打开 DEBUG CONSOLE command + shift + Y 三、打开 webview 控制台 command + shift + p 输入 open webview Developer tools 四、VScode...
  • 最近突然发现谷歌浏览器按F12或者右键检查打开控制台很慢,明明之前很好用的,实在没找到原因,最后转用IE浏览器,发现他还是没有谷歌好用,只能找办法解决,最后发现解决办法很简单,具体原理是啥我也不清楚 ...
  • 点击 Run/Edit Configurations 勾选 Use external console 控制台在程序不阻塞的情况下会直接关闭,请添加 system(“Pause”); 效果如图
  • 在任意文件夹(比如桌面)下:Shift按键+鼠标右键,点击“在此处打开 Powershell 窗口(S)”,即可进入。 优点: 比较快。 自动切换到当前路径,不需要cd手动切换。 通过开始菜单或Win按键 点击开始菜单(或键盘...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 438,640
精华内容 175,456
关键字:

怎么打开控制台