【OPPO主题制作系列 - 01】-- 写个小工具自动打包Theme文件
参考OPPO主题设计师站:
http://dev.theme.oppomobile.com/user/user_start
想要打包成Theme文件,必须把需要打包的文件夹拖到oppo-themepack.exe这个应用程序上执行:

每次拖来拖去都很麻烦,然后就写个程序一键执行:

主要代码:
/// <summary>
/// 生成Theme文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnGenerate_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(this.txtPathFolder.Text))
{
return;
} var packToolPath = @"..\..\PackTools\oppo-themepack.exe"; // 打包的exe程序绝对路径
var themeFolderPath = this.txtPathFolder.Text.Trim(); // 需要打包的文件夹目录
var myProcess = new Process();
var myStartInfo = new ProcessStartInfo(packToolPath, themeFolderPath);
myProcess.StartInfo = myStartInfo;
myProcess.Start();
myProcess.WaitForExit(); //等待程序退出 var generateThemeFolder = Directory.GetParent(themeFolderPath).ToString();
DialogResult dr = MessageBox.Show($"打包完成,文件存放路径:{generateThemeFolder},是否打开Theme文件所在文件夹?", "提示", MessageBoxButtons.OKCancel);
if (dr == DialogResult.OK)
{
Process.Start("Explorer.exe", generateThemeFolder);
}
this.txtPathFolder.Text = string.Empty;
} /// <summary>
/// 选择需要打包的Theme文件目录
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnPathFolder_Click(object sender, EventArgs e)
{
FolderBrowserDialog dialog = new FolderBrowserDialog();
dialog.Description = "请选择文件路径";
if (dialog.ShowDialog() == DialogResult.OK)
{
this.txtPathFolder.Text = dialog.SelectedPath;
}
}
【OPPO主题制作系列 - 01】-- 写个小工具自动打包Theme文件的更多相关文章
- 分享一个很早之前写的小工具DtSpyPlus
几年前写的一个获取windows窗体基本信息和屏幕取色的小工具 ,一直在用. 下载地址 http://files.cnblogs.com/dint/SpyPlus.zip
- OpenCV探索之路(二十五):制作简易的图像标注小工具
搞图像深度学习的童鞋一定碰过图像数据标注的东西,当我们训练网络时需要训练集数据,但在网上又没有找到自己想要的数据集,这时候就考虑自己制作自己的数据集了,这时就需要对图像进行标注.图像标注是件很枯燥又很 ...
- 应急分析异常通信的小思路和自己写的小工具(查询CNAME和A记录)
一.背景: 在很多时候,应急会发现.卧槽,异常连接,只有一个域名或者IP. 怎么办?上防火墙看记录,查域名对应的记录累成狗,自己把之前的代码改了改,写了个小工具,一条命令查询DNS相关记录,也可以指定 ...
- [No00006C]文件名复制,归档小助手【自己写的小工具,希望能帮助大家】
特别补充一句:软件可以一次性复制多个文件的文件名. Windows 中的复制文件名实在是有些不方便 ,需要点右键 "重命名"之后再点右键选择"复制"才可复制文件 ...
- 利用PyQt4写的小工具软件
应公司文职工作人员需求,写一个车间人员工作时间的统计软件,输入开始工作时间1,再输入结束工作时间2,计算两个时间的差值. 根据需求,初步构想的UI界面如下: 下面开始干活. 分析后觉得利用PyQt4来 ...
- 前端工程化系列[01]-Bower包管理工具的使用
本文主要介绍前端开发中常用的包管理工具Bower,具体包括Bower的基本情况.安装.使用和常见命令等内容,最后还介绍了依赖树管理的常见方式以及Bower采用的策略并进行了比较. 1.1 关于Bowe ...
- Python写黑客小工具,360免杀
构思: client:反向连接server,执行shell命令 server:发送命令,控制客户端 import subprocess import socket import threading t ...
- 入坑python 自己写的小工具,纪念一下
这个程序的功能是可以从表格中读取某一列数据,传到IDs 这一个参数里,然后在url中获取相应的请求值,并打印 import urllib.request import json import xlrd ...
- Python写安全小工具-TCP全连接端口扫描器
通过端口扫描我们可以知道目标主机都开放了哪些服务,下面通过TCP connect来实现一个TCP全连接端口扫描器. 一个简单的端口扫描器 #!/usr/bin/python3 # -*- coding ...
随机推荐
- (转)Spring4.2.5+Hibernate4.3.11组合开发
http://blog.csdn.net/yerenyuan_pku/article/details/52887573 搭建和配置Spring与Hibernate整合的环境 今天我们来学习Spring ...
- DBMS数据库语言
https://www.yiibai.com/dbms/dbms-language.html DBMS具有适当的语言和接口来表达数据库查询和更新.数据库语言可用于读取,存储和更新数据库中的数据. 数据 ...
- 主成分分析、因子分析、ICA(未完成)
并且SVD分解也适用于一般的矩阵. 主成分分析可以简单的总结成一句话:数据的压缩和解释.常被用来寻找判断某种事物或现象的综合指标,并且给综合指标所包含的信息以适当的解释.在实际的应用过程中,主成分分析 ...
- QT_2
1.默认生成代码的含义(.pro)
- python之int (整型)
用途: 用于计算和比较 整型的格式: 10203 123 3340 整型的运算: + - * / ** // % 整数的加: a = 10 b = 20 print(a + b) # 输出结果 30 ...
- PHP07 函数
学习要点 函数的定义 自定义函数 函数的工作原理和结构化编程 PHP变量范围 声明及应用各种形式的PHP函数 递归函数 使用自定义函数库 匿名函数和闭包 常用PHP系统函数 PHP7函数新特性 函数的 ...
- freemarker特殊字符输出
期望输出: #{fefefefwewrerwerwrrrre}${fffqqqwwwwwwwwwwwwwwww} 但是以上解析ftl时候会报错!!!!!!!!!!!! 解决办法: 方法1:使用${r& ...
- 解决chrome 批量下载器 mgblihnaaedmhhgadafknogahbgejnno 插件乱码
找到 mgblihnaaedmhhgadafknogahbgejnno\当前版本号(0.0.1_0)\popup.html <html> <head> <meta cha ...
- swift详解之十-------------异常处理、类型转换 ( Any and AnyObject )
异常处理.类型转换 ( Any and AnyObject ) 1.错误处理 (异常处理) swift 提供第一类错误支持 ,包括在运行时抛出 ,捕获 , 传送和控制可回收错误.在swift中 ,错误 ...
- 洛谷 P1708 天然气井 题解
https://www.luogu.org/problemnew/show/P1708 这道题还是比较好的. 读完题目我们先想想如何计算某个天然气井($x_1,y_1$)和中转站($a_1,b_1$) ...