一、原因

MarkdownPad2在Win10当中可能无法正常运行,右侧预览界面会出现错误“This view has crashed!”查阅官网FAQ得知大多数情况下安装Awesomium 1.6.6 SDK(可能有更新的SDK版本)可解决该问题。但该SDK安装大小高达186MB,远超过MarkdownPad2的体积(约36.1MB)。由于不进行Awesomium的相关开发,所以希望能通过删除MarkdownPad2不用的文件以减小体积。

最终解决方案见文末

二、分析过程

0.安装SDK

经过多次尝试,在安装SDK时依次选择覆盖安装、自定义,在功能面板中仅勾选“.NET Framework 4.0 Client Profile”,不勾选“Awesomium SDK Samples”、“Awesomium.NET Samples”和“Redistribution Modules”时得到的体积最小

1.删除部分文件、文件夹

安装的SDK目录结构如下:

C:\PROGRAM FILES (X86)\KHRONA LLC
└─Awesomium SDK
└─1.6.6
├─build
│ ├─bin
│ │ ├─debug
│ │ │ └─locales
│ │ ├─release
│ │ │ └─locales
│ │ └─release_packed
│ └─lib
│ ├─debug
│ └─release
├─include
│ └─Awesomium
├─logos
├─readme
└─wrappers
└─Awesomium.NET
├─Assemblies
│ └─Packed
├─Mono
│ ├─2.0
│ └─4.0
├─Windows Forms Demo
└─WPF Demo

猜测当中的logos、readme、include、XX Demo文件夹可以删除

*.txt、*.rtf、*.chm以及所有图像文件都可以删除

删除这些内容后MarkdownPad2正常运行,猜想正确

2.删除全部文件夹

突发奇想,如果删除整个Khrona LLC会如何

经测试,删除后不影响正常使用,可行

缺点:由于缺少部分卸载用程序,导致整个SDK无法从控制面板中卸载

3.寻找卸载程序,并删除除此之外的全部文件

逐步深入SDK路径,最先遇到的可执行程序路径如下:

C:\PROGRAM FILES (X86)\KHRONA LLC
└─Awesomium SDK
│ updater.exe
│ updater.ini
……

保留updater.exe、updater.ini后整个SDK可以从控制面板中卸载

4.用火绒剑直接分析MarkdownPad2所需文件

使用火绒安全中的火绒剑(可用其他分析软件)对MarkdownPad2进行分析,发现其运行过程中用到了以下文件

C:\Windows\Microsoft.NET\assembly\GAC_32\Awesomium.Core\v4.0_1.6.6.0__e1a0d7c8071a5214\Awesomium.dll

C:\Windows\Microsoft.NET\assembly\GAC_32\Awesomium.Core\v4.0_1.6.6.0__e1a0d7c8071a5214\AwesomiumProcess

尝试删除文件,发现两者都为MarkdownPad2必须文件

遂进一步分析

C:\Windows\Microsoft.NET\assembly\GAC_32\Awesomium.Core\v4.0_1.6.6.0__e1a0d7c8071a5214\ 文件夹,发现删除当中的任一文件都会导致MarkdownPad2无法启动

后尝试将文件夹当中的所有文件复制到MarkdownPad2的安装目录中,发现MarkdownPad2安装目录当中已有这些文件

由此猜测win10当中MarkdownPad2相关组件未被注册,导致软件无法正常运行,而win7当中无需注册MarkdownPad2相关组件

三、最终解决方案

1.安装SDK:依次选择覆盖安装、自定义,在功能面板中仅勾选“.NET Framework 4.0 Client Profile”,不勾选“Awesomium SDK Samples”、“Awesomium.NET Samples”和“Redistribution Modules”

2.删除文件:删除C:\Program Files (x86)\Khrona LLC\Awesomium SDK下除updater.exe、updater.ini以外的全部文件

按照此方法可省出185MB空间

2019.06.28

最小化MarkdownPad 2安装体积(win10)的更多相关文章

  1. RHEL6 最小化系统 编译安装部署zabbix (mysql)

    RHEL6 最小化系统 编译安装部署zabbix (mysql)官方说明详细见:https://www.zabbix.com/documentation/4.0/manual/installation ...

  2. CentOS7.6最小化纯净版安装xfce桌面

    安装Xfce桌面环境 yum groupinstall "X Window system" yum install epel-release yum groupinstall xf ...

  3. vim可视化&Linux系统安全最小化原则& su & sudo

    一.vim在可视化模式下编辑 crl+v,会变成-- VISUAL BLOCK --,然后用上下左右键去选中. 多行注释: ESC进入命令行模式; Ctrl+v进入VISUAL BLOCK模式 上下左 ...

  4. 最小化安装的centos7.5上编译安装git2.19

    VMware Workstation已经采用最小化安装CentOS7,显示版本为CentOS7.5,准备采用yum安装git. 采用yum list git发现可安装的GIT软件包版本1.8.3.1, ...

  5. RedHat7.4最小化安装没有ifconfig命令

    软件环境 VirtualBox 5.2.8 rhel-server-7.4-x86_64-dvd.iso 系统环境 Win10 64 位 8G内存 最小化安装了RedHat7.4之后,进入系统之后使用 ...

  6. ArchLinux最小化安装 必备库 常用命令

    铸成强大的工作站环境——ArchLinux最小化安装 所有问题归结起来,只是一个问题:ArchLinux最小化安装,需要安装哪些包? 1.bash//最基本的Bash Shell(必须)2.bzip2 ...

  7. centos7 最小化安装没有ifconfig及修改网卡名enoxxx为ethX

    问题: 1.最小化安装centos7后发现无ifconfig命令 想通过ifconfig查看ip地址发现ifconfig命令不存在,可通过命令 #ip addr       //查看ip 或者 解决: ...

  8. centos 6.X minimal 系列最小化安装完成后,安装mono和jexus过程小记录

    在使用虚拟机安装minimal版centos运行mono+jexus的时候,遇到了一些坑,记录一下,比如虚拟机访问不了网络,没wget命令没开放80端口,等等小问题,其他网上教程已经有mono+jex ...

  9. 生产服务器环境最小化安装后 Centos 6.5优化配置[转]

    内容目录 centos6.5最小化安装后配置网络: IP地址, 网关, 主机名, DNS 更新系统源并且升级系统 系统时间更新和设定定时任 创建普通用户并进行sudo授权管理 修改SSH端口号和屏蔽r ...

随机推荐

  1. 6.Ansible Roles角色实战

    ==Roles小技巧:== 1.创建roles目录结构,手动或使用ansible-galaxy init test roles 2.编写roles的功能,也就是tasks. nginx rsyncd ...

  2. JavaScript全栈教程

    这是小白的零基础JavaScript全栈教程. JavaScript是世界上最流行的脚本语言,因为你在电脑.手机.平板上浏览的所有的网页,以及无数基于HTML5的手机App,交互逻辑都是由JavaSc ...

  3. 关于js的for in循环,慎用

    参考:http://www.cftea.com/c/2014/08/6290.asp作者:vkvi 如题我看到也有点诧异,测试了真的有这个问题,上代码 Array.prototype.a = func ...

  4. Geoserver安装

    准备内容 安装环境:win10*64位专业版 安装文件:geoserver-2.15.2 安装步骤 安装JDK 1.安装GeoServer是基于Java的环境,所以需要先装Jdk环境. 2.前往官网下 ...

  5. 我应该怎么学习SAP?

    越来越多的人关注本公众号,在后台留言问我怎么进入SAP行业,应该怎么学习SAP,大部分都是外行想入行SAP的朋友.作为过来人,这些问题我也曾经问过别人,也走过不少弯路.但现在轮到别人问我了,为了让初学 ...

  6. Android数据库GreenDao的使用总结

    一.GreenDao的介绍 GreenDAO是一个开源的Android ORM(“对象/关系映射”),通过ORM(称为“对象/关系映射”),节省了我们在数据库开发过程的时间! 通过GreenDao,我 ...

  7. macOS Catalina Kernel panic 因为意外而重新启动

    0x00 What's Happend? 我的 MacBook Air 在升级到 Catalina 之后,经常在休眠模式重启,随后在桌面上显示"因为意外而重新启动"的信息,以下是跟 ...

  8. docker下MySQL的主从复制

    MySql的主从复制 sudo docker pull MySQL:5.7 拉取MySQL的镜像文件(版本号为 5.7) sudo docker run -p 3339:3306 --name mas ...

  9. 百度BAE专业版申购SSL证书

    这几天开发了一个小程序,本来想放到BAE基础版的,但是基础版现在不能再新增项目了,想了一下,出点血,配了个专业版.但是专业版的SSL证书是需要配的,而小程序必须使用https,所有必须申请一个证书.在 ...

  10. 解决安装tensorflow-gpu失败:Command "python setup.py egg_info"failed with error code 10 in.....

    按照https://blog.csdn.net/shawroad88/article/details/82222811前几步安装. 又有新的报错如下: 再运行运行代码安装setuptools pip ...