可以删除源代码,并不影响宏的执行 2、P-Code: 与 VB 语言相同,VBA 同样有 P-Code,通过内置的 VB 虚拟机来解释 P-Code 并执行,平常我们 Alt+F11 打开所看到的正是反编译的...每一个流模块中都会存在一个未被文档化的 PerformanceCache,其中包含了被编译后的 P-Code 代码,如果 _VBA_PROJECT 流中指定的 Office 版本与打开的 Office...通过信息收集得知目标的 Office 版本,利用 VBA stomping 使宏被特定版本的 Office 打开时才会执行恶意行为宏代码,除此之外的 Office 版本打开时执行正常宏代码 目前 VBA...VBA 编辑器 ? 与原来的文档没有任何区别,接下来使用 Office2013(64 位)打开 ? VBA 编辑器 ?...2007(x86) 8800 2010(x86) 9700 2013(x86) A300 2016(x86) AF00 在 VBA 编辑器中隐藏宏 可以在 VBA 编辑器中隐藏真正的宏,只需要修改 PROJECT
office365有32位和64位两个版本。通过64位office软件打开早期的excel文件,如果代码中存在早期面向32位office编写的VBA代码,可能会存在上述的编译错误。...可能的解决方案: (1)如果您具有访问文档或项目中的 VBA 代码的权限,请先取消对该模块的保护,然后再次运行该代码以查看具体的错误。...下面这种方法可以避开VBA工程的密码验证。具体步骤如下: (1)新建一个工作簿(xlsm格式)(记为工具文件),在工作簿内新建一个模块。将以下代码复制到模块内。...,再次hook Hook End If End Function (2)在Project界面上,右击sheet1工作表,选择查看代码,将如下代码拷贝进去。...(4) 回到工具文件,运行宏命令sheet1.破解。顺利的话,会弹出对话框,提示”破解成功“。 (5) 双击刚才要解密的VBA工程窗体,发现已经可以查看之前受保护的模块代码了。
2、 检查是否安装SVN 成功 打开 菜单条 Window -> Preferences -> Team 看到有SVN的信息就证明成功安装了。不成功的话请反复上述步骤。...登录成功后,点击右键,“检出为”。检出全部的资源,会出现例如以下界面: 这就是我们的project仓库了。...(2)假设伙伴更新了代码,那么你须要知道ta 详细是更新了什么。那么就是得把仓库的project同步到自己的电脑中。 选择你要同步的project。...选择要查看的project,右键 , team -> 显示资源历史记录 这里再解释下 更新、同步与提交的差别: 更新是指 server上变动了的 而你本地没有变动。须要你更新。...提交是指 server上没有的,也就是你改过的东西。你须要将代码提交。其它同事更新你的代码 commit 提交 同步,是在更新提交之前做的工作。
安装 JDK GWT 要求 JDK 1.6 或以上版本,在 console 中执行命令 java -version 检查是否已安装,输出如下图类似内容,即表示已安装。...] 在 IDEA 中打开上面创建的项目,依次点击: File --> Open --> hello(项目名) [open-project] 打开后可以看到项目目录结构: [project-file] 步骤二...[project-setting] 上面创建的 CODING 项目没有初始化代码仓库,可以按照指引按照自己的需要进行初始化,这里选择使用命令行推送已存在的仓库。...构建完成后会收到通知,可以点开构建详情查看详细日志。 [build-done] 打开 制品库 页面可以看到自动发布的文件。...CODING 提供的持续集成能力远比教程中展示的要强大,有兴趣的同学可以阅读官方文档详细了解,相信可以为您的工作提供帮助,创造更好的效益。 示例代码可以在 CODING 公开源代码仓库 获取。
如果你收到过一些这样的Excel文件,文件里有VBA代码,实现了很好的功能,可是作者却对VBA工程进行了加密,你可能会非常希望查看到里面的VBA代码。...会想到的最直接的办法当然就是要到密码,可这个一般做不到,这个时候有什么办法能够查看VBA代码呢? 前面介绍的提取模块代码可以做到,这里再介绍一种直接清除密码的功能。...VBAProject工程里面,一定会有个数据流PROJECT,这个文件提取后,得到的内容大致如下: ID="{7A581A9B-0F9A-480B-8C0A-1C59D52CAB04}" Document...(PrePath & "PROJECT", b) If VBA.Len(ret) Then UnProtectProject = ret Exit Function...在显示对话框之前,函数把一个应用程序定义的值作为WM_INITDIALOG消息的IParam参数传到对话框过程,应用程序可用此值来初始化对话框控制。
VBA是一种基于微软官方的Visual Basic编程语言的宏语言,用于自定义和增强Office应用程序的功能。二、VBA编辑器界面和功能介绍代码编辑区域:您可以在代码编辑区域编写和编辑VBA宏代码。...您可以在项目资源管理器中管理和组织您的VBA项目结构。属性窗口:属性窗口显示当前选定对象的属性和属性值。通过属性窗口,您可以查看和编辑对象的各种属性,例如名称、大小、颜色等。...这对于测试代码片段和快速查看变量值非常有用。工具栏:VBA编辑器的工具栏提供了快速访问常用功能的按钮,例如运行、停止、调试等。您可以通过工具栏快速执行各种操作。...Excel2013界面找到宏word2013界面找到宏界面如下:PowerPoint 2013界面找到宏界面如下:3.3 使用开发者工具打开VBA编辑器Excel打开开发者工具的步骤如下:功能区任意区域鼠标右键弹出菜单选择...因为存在一些恶意的代码,所以一般将宏安全性设置为禁用3.4 Excel文档内部打开VBA编辑器的方式Excel2013 可以点击最底部的sheet标签页右键查看代码可以打开。
文档被感染病毒,当文档打开会执行自动宏,如果宏被执行,它会去检测当前模板是否被感染病毒,如果没有被感染,它会将释放自身的病毒代码。...: EvilClippy是一款专用于创建恶意MS Office测试文档的跨平台安全工具,它可以隐藏VBA宏和VBA代码,并且可以对宏代码进行混淆处理以增加宏分析工具的分析难度。...VBA stomping VBA 在 Office 文档中可以以下面三种形式存在 1、源代码: 宏模块的原始源代码被压缩,并存储在模块流的末尾。...可以删除源代码,并不影响宏的执行 2、P-Code: 与 VB 语言相同,VBA 同样有 P-Code,通过内置的 VB 虚拟机来解释 P-Code 并执行,平常我们 Alt+F11 打开所看到的正是反编译的...每一个流模块中都会存在一个未被文档化的 PerformanceCache,其中包含了被编译后的 P-Code 代码,如果 _VBA_PROJECT 流中指定的 Office 版本与打开的 Office
一、新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史...$ git clone [url] 二、配置 Git 的设置文件为. gitconfig,它可以在用户主目录下 (全局配置),也可以在项目目录下 (项目配置) # 显示当前的Git配置 $ git...add . # 添加每个变化前,都会要求确认 # 对于同一个文件的多处变化,可以实现分次提交 $ git add -p # 删除工作区文件,并且将这次删除放入暂存区 $ git rm [file1]...push [remote] --tags # 新建一个分支,指向某个tag $ git checkout -b [branch] [tag] 七、查看信息 # 显示有变更的文件 $ git status...# 检出head版本的README文件(可用于修改错误回退) git merge origin/master # 合并远程master
B同学的修改 $ git diff --theirs #查看和A同学修改的差别 注意:在把握不好哪个是ours的时候,有个简单的方法就是打开那个文件,HEAD代表ours。...如果你在 git blame 后面加上一个 -C,Git会分析你正在标注的文件,并且尝试找出文件中从别的地方复制过来的代码片段的原始出处。...步骤三:git自动检出Git检出中间的那个提交,然后需你测试验证是否有问题 如果还存在,说明问题是在这个提交之前引入的; 如果问题不存在,说明问题是在这个提交之后引入的。...# 可以让Git在推送到主项目前检查所有子模块是否已推送 $ git push --recurse-submodules=check 如果发现有未推送的文件,最简单的方式就是进入每一个子模块中然后手动推送到远程仓库...^4df6152 注意: 4df6152为commit2前一次提交的ID,可以通过git log查看 可以将这个文件导入到原始的仓库中,即使在这期间已经有其他的工作提交到这个仓库中。
有朋友在问,从零开始学习VBA应如何着手?...一般对于问这个问题的人,我的建议是:慎重考虑是否真有必要学VBA——除非您还是一个年轻且有大量精力和时间的在校学生。...很多通过几十天就能精通VBA的说法其实都有一个前提,就是你本身有一定的编程基础,比如你原来学过其他的编程语言,而只是切换到VBA,那实际上你只需要学点儿VBA的语法就能用起来了,因为你已经具备编程的思维和能力...2010或2013可到微软官方下载插件): Power Query采用图形化的界面,大量功能的使用跟在Excel中的鼠标操作差不多,用于处理多种复杂数据源等情况时,却比VBA要简单得多。...举个简单的例子,将多个工作簿的数据进行合并,用Excel2016的新功能Power Query(Excel2010或Excel2013可到微软官方下载相应的插件)根本不需要写任何代码,普通用户鼠标操作1
,选择TorstoiseSVN,选择导入 选择上传的位置 项目导入 查看是否导入成 4.3 检索项目(check out) 复制远程仓库中项目的地址 在本地任意位置检出...导出项目到本地 检出成功 4.4 提交代码 (commit) 选择修改好的文件邮件,选择TortoiseSVN,选择加入 提交项目 查看是否更新成功 4.5...更新代码(update) 在项目任意位置邮件,更新 查看更新信息 4.6 版本冲突问题 4.6.1 版本冲突的原因 有A、b两位用户同时检索到项目的版本1,然后B先修改了文件并且提交了...,然后A提交文件时会发现修改的文件与B的文件有冲突的地方,系统不知道该如何将A提交的文件更新到仓库的项目中。.../更新可以降低在冲突发生的概率,以及发生时解决冲突的复杂度 在提交时,写上明确的 message,方便以后查找用户更新的原因,毕竟随着时间的推移,对当初更新的原因有可能会遗忘 养成良好的使用习惯每天早上打开后
代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史 $ git clone [url]...# 添加每个变化前,都会要求确认 # 对于同一个文件的多处变化,可以实现分次提交 $ git add -p # 删除工作区文件,并且将这次删除放入暂存区 $ git rm [file1] [file2...版本的README文件(可用于修改错误回退) git checkout -- README (右滑查看所有内容) 标签 # 列出所有tag $ git tag # 新建一个tag在当前commit...查看信息 # 显示有变更的文件 $ git status # 显示当前分支的版本历史 $ git log # 显示commit历史,以及每次commit发生变更的文件 $ git log --...# 检出head版本的README文件(可用于修改错误回退) git merge origin/master # 合并远程master
新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史...$ git clone [url] 二.配置 Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置) # 显示当前的Git配置 $ git config...# 添加每个变化前,都会要求确认 # 对于同一个文件的多处变化,可以实现分次提交 $ git add -p # 删除工作区文件,并且将这次删除放入暂存区 $ git rm [file1] [file2...查看信息 # 显示有变更的文件 $ git status # 显示当前分支的版本历史 $ git log # 显示commit历史,以及每次commit发生变更的文件 $ git log --stat...# 检出head版本的README文件(可用于修改错误回退) git merge origin/master # 合并远程master
现阶段的开发管理模式(Tools模式) 相关概念: 服务器 server 专用的硬件服务器 仓库 repository 专用于某个项目的磁盘空间,位于硬件服务器中 检出 checkout 一次性工作,下载代码并完成与服务器间的关联...注意事项 所有注意事项参看单仓库提供模式 由于多仓库启动模式下,提供有多个仓库可使用,因此在指定了SVN服务器位置后,必须指定仓库名称 多仓库检出后会在检出目录中产生一个与被检出仓库相同名称的目录 3.....mine后缀的文件是用户在更新之前的最后修改版本内容,可通过原始编辑器查看 .r*后缀的文件是当前文件对应的各个版本的文件内容,r后面的数字是版本号,可通过原始编辑器查看 步骤二:查看并修改冲突文件...打开原始文件,其中包含有冲突内容,用户根据需要进行调整 步骤三:删除冲突备份信息,并进行提交 将除冲突文件之外所生成的所有文件进行删除,并对原始文件进行合并冲突处理后,原始文件状态由冲突状态转换为已编辑状态...加锁操作是为文件设置了一种状态,也属于对文件的修改,因此需要进行提交。加锁前与加锁后,文件的显示状态发生变化。 ?
os get caption 查看系统版本 slmgr /dlv 查看激活详情 4)说明: 如果激活失败有两种原因: a.你无意中修改或卸载了系统自带的激活密钥。...解决办法:命令提示符(管理员)执行以下命令安装密钥后重新激活(密钥在文末“附1”) slmgr /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX b.你安装的系统为RTL版,需要先转换为...使用 Win+i 快捷键打开「设置」- 点击「更新和安全」- 在左侧点击「激活」选项卡 点击右侧的「更改产品密钥按钮」,输入Key:NPPR9-FWDCX-D2C8J-H872K-2YT43 2>>激活...Microsoft Office\Office17 cd C:\Program Files\Microsoft Office\Office17 总之就是CMD令提示符(管理员)进入 OSPP.VBS 文件所在的目录...-92CD4 Project 2013 Professional FN8TT-7WMH6-2D4X9-M337T-2342K Project 2013 Standard 6NTH3-CW976-3G3Y2
| Project Defaults | Project Structure 中, 在 Android SDK 选项中 选择 SDK 路径; -- 查看 SDK Manager 是否可用 : 此时...从SVN服务器上检出代码 (1) 检出代码并创建工程 检出代码, 将代码放到新创建的工程中; 弹出 Check from Subversion 对话框途径 : -- 通过菜单栏 : VCS | Check...-- 选择需要检出的工程URL, 点击Checkout按钮 : -- 选择检出项目本地存放目录 : -- 选择工程在本地的存放目录 : 如果系统生成的不合适, 点击 键可以自己选择存放工程的本地目录...: 这两个键分别是 更新 和 提交 代码的按钮, 如果项目时从 SVN 上检出的, 这两个按钮就可以使用, 否则这两个按钮就不能使用; (2) 检出代码放入已有工程 检出代码并导入项目到现有工程中...Import Project; -- 选择刚才创建的my目录 : -- 选择导入工程方式 : -- 为 Project 命名 并选择 工程目录 : -- 选择 Project 中要导入的文件
具体的解决方法是在同一个 Solution下创建两个项目: 用于设计WinForms应用程序的.NET Framework应用程序(.net Framework 项目) 用于运行WinForms应用程序的...在刚创建的Solution中使用vs自带的模板,选择其中的.net framework forms添加新的project,取名为"CoreHelloForm.Designer" ? ? ?...那是因为项目CoreHelloForm.Designer中的MainForm.cs 所Link 的与MainForm相关的文件已经在 项目CoreHelloForm 中 打开。...我们将已打开的文件中与项目CoreHelloForm.Designer中Form相关的文件都关闭掉,比如: ?...项目代码已推到github,欢迎Fork和star. 传送门: .netCore-WinForms_Designer , 如果觉得自己配置起来麻烦,也可以 clone 下来自己体验一把喔~
Sheet1中是否有筛选。...打开/关闭自动筛选 在应用自动筛选时,可能已经存在筛选了。...检查是否已应用自动筛选 如果有一个包含多个数据集的工作表,并且希望确保知道没有筛选已经就位,则可以使用以下代码: Sub CheckforFilters() If ActiveSheet.AutoFilterMode...如果为TRUE,则表示已应用筛选,并使用ShowAllData方法显示所有数据。注意,这不会删除筛选,筛选图标仍然可用。 在受保护的工作表中使用自动筛选 默认情况下,当工作表受保护时,不能应用筛选。...ThisWorkbook代码模块中,因此当工作簿打开时就会自动执行。
只要进行团队软件开发,就会涉及源代码的合并共享以及带来的相关问题 1、 代码如何合并(手工合并几乎不可能) 2、 历史版本的保存(各个版本间有大量重复,多大变化算一个版本) 3、跟踪哪些代码是谁修改...--> 点击Finish --> 输入用户名和密码(此步不一定每个人都有) 11.自由选择是否打开synchronize视图 12.右键project --> team --> 提交 13.自由选择是否写日志...2.选择要下载的project右键 --> 检出为 3.自由选择是否更改属性(建议使用默认) --> Finish --> 下载成功 从服务器更新代码: 1.右键项目project–>与资源库同步...2.选择打开Synchronize视图 3.与本地代码有不同的服务器代码将显示在Synchronize视图下,双击可以查看本地代码和服务器代码的对比,加号的为新增的文件(本地还没有) 4.将模式切换到...Incoming Mode,这个模式下的代码都是服务器更新的代码,需要下载到本地的,右键要更新的文件–>team–>更新 5.如果出现下图这个符号,则代表本地代码和服务器代码有冲突(即:本地代码在未更新到最新版本的情况下
领取专属 10元无门槛券
手把手带您无忧上云