了解VBE VBE则是编译后(加密)的VBS代码

一、vbe与vb

  VBE跟VBS差不多,都是VB脚本代码文件,但他们也有不同:
  VBS是明文代码,就是说可以直接使用记事本编辑;
  VBE则是编译后(加密)的VBS代码,使用记事本打开不能直接看到源代码。(有些例外)
  加密工具有很多,其中常用的是 Microsoft Script Encoder(screnc.exe),此外还有许多。
  VBE格式在QQ传文件中往往不会被拦截,而VBS格式却会被拦截,这应该是程序设计者的一个失误。
  因此,所以很多人没有进行加密而直接改扩展名为“VBE”,依然能够运行,只是为了方便一下。

二、vb脚本程序会被用作恶搞

  vb脚本程序因编写简单,体积小,方便灵活,多被人用于恶搞小程序、病毒等。(BASIC代码一直很简单,特别是脚本代码还有一个“wscript”脚本库)
  如著名的并且风靡一时的“说‘我是猪'”:恶搞关机vbe文件。
  对于这个恶搞程序,解决很简单。在任务管理器中找到进程“wscript.exe”(脚本宿主程序)并结束之,然后在运行中输入并运行“shutdown -a”即可解除定时关机。
  恶搞程序用这样的方法一般可以解决。病毒则相对比较复杂。
  在这里举一个例子:(源代码 Fixed By Me)


代码如下:

  Set objWSHShell = wscript.CreateObject("wscript.shell") '定义并初始化Shell对象
  objWSHShell.Run "shutdown.exe -r -t 60 -c ""说我是猪,不说“我是猪”就会关机,不信邪的你可以试下。"" ", 0, True
  '此行代码作用是调用 shutdown 进行重启,60秒倒计时。
  Dim uMaMe
  Do While (strReturn <> "我是猪") '循环语句,直到变量 strReturn 等于 “我是猪” 时退出循环。
  strReturn = InputBox("说我是猪,就可以不关机,快点,说 ""我是猪"" ", "好好考虑吧……", "你才是", 8000, 7000)
  If strReturn = "你才是" Then
  If uMaMe <> "yes" Then
  uMaMe = "yes"
  objWSHShell.popup "敢骂我,你再骂一次试看看!",1,"",4096
  Else
  objWSHShell.popup "好哇,天堂有路你不走,关机无门你偏来,关机吧~~~", 1,"",4096
  objWSHShell.Run "shutdown.exe -r -t 0 ", 0, True '直接关机
  End If
  End If
  Loop
  '如果你说了“我是猪”,则退出循环,往下执行
  objWSHShell.Run "shutdown.exe -a", 0, True '解除定时关机
  objWSHShell.popup "早说不就行了嘛",1,"",4096

三、vb脚本程序会被作为病毒

  有时杀软对于vb脚本文件会认为是病毒,这一般是脚本里有运行“shutdown -s xxx”之类的病毒性质的代码。不是所有的vb脚本文件都有毒。
  vb脚本文件有时候会被作为U盘病毒进行传播,典型的例子是“u.vbe”,学校机房的等公共场合较常见,也有相关的蠕虫病毒,相关症状为双击无法打开硬盘。

四、vbe也被称为Visual Basic Edirtor

功欲善其事,必先利其器!在我们要学习VBA与用VBA编写代码时,必须先熟悉开发的环境——VBE。

VBE——Visual Basic Edirtor,如果大家对微软的一门编程语言有所了解的话,那对VBE的样子也就不会陌生的。那怎么进入VBE呢?

从Excel菜单中,选择工具——宏——Visual Basic 编辑器,或者按快捷键Alt+F11即可进入,不少朋友可能都没有接触过VBE,甚至连Excel中包含这个编辑器都一无所知,下面这张图就展现出VBE最常用的七个窗口,而图片也让这几个窗口更容易说明。

(0)

相关推荐

  • 了解VBE VBE则是编译后(加密)的VBS代码

    一.vbe与vb VBE跟VBS差不多,都是VB脚本代码文件,但他们也有不同: VBS是明文代码,就是说可以直接使用记事本编辑: VBE则是编译后(加密)的VBS代码,使用记事本打开不能直接看到源代码.(有些例外) 加密工具有很多,其中常用的是 Microsoft Script Encoder(screnc.exe),此外还有许多. VBE格式在QQ传文件中往往不会被拦截,而VBS格式却会被拦截,这应该是程序设计者的一个失误. 因此,所以很多人没有进行加密而直接改扩展名为"VBE",依

  • Android Apk反编译及加密教程

    目录 一.Apk文件组成 二.反编译必备工具及使用 1)apktool 2)Dex2jar 3)jd-gui 三.Apk的加密过程 这几天在上海出差,忙里偷闲学习了一下Apk的反编译工具的基本使用.下面就简单介绍一下如何将我们从网上下载的Apk文件进行反编译得到我们想要获得的资源文件和源码. 一.Apk文件组成 Android的应用程序APK文件说到底也是一个压缩文件,那么可以通过解压缩得打里面的文件内容,不过很显然,当你去解压完去查看的时候,发现里面的很多东西和你想象中的不太一样.资源文件等x

  • 利用vscode调试编译后的js代码详解

    前言 在开发的过程中,几乎不可能一次性就能写出毫无破绽的程序,断点调试代码是一个普遍的需求. vscode 是一个非常棒的编辑器,内置功能强大的调试能力.经过简单的设定,就可以对 js 文件进行调试.但有时我们想要调试的内容是经过编译的,当然我们可以直接调试编译后的代码.但经过编译压缩以后的代码,可读性很差,且也可能无法分模块查看了,有什么方法进行编译前的代码调试么?答案当然是肯定的. 下面话不多说了,来一起看看详细的介绍吧. vscode 的常规调试 vscode 的调试界面在窗口最左边: 最

  • 详解Webpack如何引入CDN链接来优化编译后的体积

    背景 在 Vue 项目中,引入到工程中的所有 js 文件,编译时都会被打包进 vendor.js,也就导致了 vendor.js 文件体积变得相当臃肿,一定程度上影响着页面的渲染.为了减少编译后的体积,提高页面渲染速度,我们可以通过引入 CDN 链接把库分离,多线程异步 js 库,从而达到加速渲染的目的.那么我们如何做呢? 步骤 1.引入CDN链接 在项目的 index.html 中,常规方式引入 CDN 链接,此处以 vue 和 element-ui 为例: <body> <div i

  • 解决idea 项目编译后没有class文件的问题

    问题 idea项目突然无法运行,提示找不到某个类.查看了编译输出目录out,发现没有class文件. 尝试解决 尝试删除out.重新导入项目.在gradle面板点击刷新,都没能解决问题. 问题解决 最后,点击Build->Rebuild Project解决.不明原因,先做下记录. 补充知识:IDEA项目无法引用本地Class类,而且各种报错 背景 今天从git 上下载下来的项目,在别的机器上都可以正常运行,然而到了我的机器上,就各种报错,而且本地的class文件也无法引用. 1.删掉项目,重新下

  • java编译后的文件出现xx$1.class的原因及解决方式

    java编译后的文件名字带有$接数字的就是匿名内部类的编译结果,接名字的就是内部类的编译结果 例如: TestFrame$1.class是匿名内部类的编译结果,TestFrame$MyJob.class则是内部类MyJob编译后得到的. 使用内部类可以隐藏一些实现的细节, 等等, 还有其他一些好处. 使用匿名类的时候, 要注意代码的可读性 补充知识:JNI之javah使用时报错:找不到类文件 初学java,想使用JNI,在用javah生成头文件时,总是报错找不到类: 看了javah的help,本

  • CMD运行Intellij Idea编译后的class文件操作

    或许很多Java初学者都会用javac.java命令运行程序,运行过几次后就转向开发工具.我本人也是这样,很久没有用命令行去执行java文件了,现在都是用Eclipse.Intellij Idea等编译工具直接编译运行. 昨天开始学习<算法>,里面很多代码都用到了命令行重定向文件实现输入输出,所以昨天用命令去执行class文件时碰到了一个NoClassDeFoundError异常,网上说的也很杂,看得"一头雾水",其实还是基础不好,搞清楚原理很多问题就迎刃而解了. Idea

  • 如何解决uni-app编译后 vendor.js 文件过大

    目录 uni-app编译后vendor.js文件过大 前景 运行后发现 小程序分包后vendor还是过大 添加以下代码 uni-app编译后vendor.js文件过大 前景 采用uni-app开发的微信小程序,发布时工具提示vendor.js过大,已经跳过es6向es5转换.查看后发现编译后代码中common/vendor.js已超过500k,所以需要体积控制. HBuilderX创建的项目勾选运行–>运行到小程序模拟器–>运行时是否压缩代码 使用cli创建的项目,可以在pacakge.jso

  • GraalVM native-image编译后quarkus的超音速启动

    目录 前言 native-image编译配置 效果展示 native-image启动时间 jvm下的启动时间 结语 前言 quarkus号称超音速亚原子JAVA为Graalvm量身定制的java堆栈,是否名副其实呢?下面就来看看真实情况如何.动手前先简单介绍下Graalvm,它是oracle出品的一个AOT编译器,可以将应用程序编译成本地映像,通俗的说可以将java编译成机器可直接执行的程序,可以参考go语言的编译输出产物.而且graalvm不仅仅支持java,对其他语言也有很好的支持.下面先看

  • 如何使用IDEA查看java文件编译后的字节码内容

    目录 首先编写一个java类StringDemo1.java 经过编译后,生成StringDemo1.class文件 使用jclasslib反编译工具 JDK版本映射 首先编写一个java类 StringDemo1.java public class StringDemo1 {    public static void main(String[] args) {        String str1 = "aaa" + "bbb";        System.o

随机推荐