0、ultralight的github更新

截至2023年3月17日,ultralight的github仓库最近的提交时间为2022年12月10日。

1、ultralight

ultralight是使用C或C++语言和HTML/JS构建界面,基于WebKit的HTML渲染器。
支持系统:Windows(7+、x64)、macOS(Sierra或更高版本)、Linux(Ubuntu/Debian9.5+、x64)。
可以与React/Vue.js/Angular等技术一起使用。可以与支持动态纹理的游戏一起使用。
年收入低于10万美元的独立开发者免费。

2、ultralight网址

官网、github、ultralight-quick-start
编写第一个程序 - 文档

3、安装Git

阿里镜像、GitClone、Git官网
可能的文件名:Git-2.40.0-64-bit.exe

4、安装CMake

官网、腾讯软件、用IDM、Motrix等下载软件加速下载
可能的文件名:cmake-3.26.0-windows-x86_64.msi
选择Add CMake to the system PATH for all users

5、安装Microsoft C++ 生成工具或者VisualStudio社区版

VisualStudio社区版
Microsoft C++ 生成工具
安装哪个都行,不下载IDE的情况下C++生成工具比较小所以安装Microsoft C++ 生成工具

选择使用 C++ 的桌面开发,按图勾选
仅勾选两项,MSVC v143 - VS 2022 C++ x64/x86 生成工具Windows 11 SDK (10.0.22000.0)

6、安装VSCode

如何下载安装VSCode
插件:C/C++ Extension Pack、Prettier

7、编写一个HelloWorld

git clone https://github.com/ultralight-ux/ultralight-quick-start
cd .\ultralight-quick-start\
mkdir build
cd build
cmake ..
cmake --build . --config Release

报红:CUSTOMBUILD : error : downloading 'https://ultralight-sdk.sfo2.cdn.digitaloceanspaces.com/ultralight-sdk-latest-win-x64 .7z' failed [.\ultralight-quick-start\build\UltralightSDK.vcxproj]
报红不用管,再运行一次
cmake --build . --config Release
再运行一次就有下载进度了,就像这样:-- [download 1% complete]
打开文件运行试试:.\ultralight-quick-start\build\Release\MyApp.exe

8、修改一下 app.html

.\ultralight-quick-start\assets\app.htm替换为以下内容

<!DOCTYPE html>
<html lang="zh-Hans-CN"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>我的应用</title><style>body {background-color: aliceblue;font: 12px/1.5 tahoma, arial, "Hiragino Sans GB", "\5b8b\4f53",sans-serif;text-align: center;}</style></head><body><h1>你好,世界!</h1></body>
</html>

9、添加一个 build.bat 脚本

VSCode插件Code Runner可以直接运行bat脚本
新建文件.\ultralight-quick-start\build.bat,内容如下:

@echo off
cd build && cmake --build . --config Release && goto aa||goto end:aa
for /r %%i in (*.exe) do (
echo %%i| findstr %cd%\Release >nul &&(start %%i && goto end)
):end

10、运行build

右键build.batRun Code,因为只改了html所以特别快

11、添加exe文件图标

  1. 新建文件.\ultralight-quick-start\src\logo.rc

    IDI_ICON1 ICON DISCARDABLE "yeah.ico"
    
  2. 将一个ico文件放进logo.rc相同的目录下,就像这样:.\ultralight-quick-start\src\yeah.ico
  3. 修改.\ultralight-quick-start\CMakeLists.txt,set语句添加一行"src/logo.rc"
    project(MyApp C CXX)
    cmake_minimum_required(VERSION 3.3.2)include(cmake/App.cmake)set(SOURCES "src/MyApp.h""src/MyApp.cpp""src/main.cpp""src/logo.rc")add_app("${SOURCES}")
    

build之后的文件图标

12、打包

  1. 免安装程序
    .\ultralight-quick-start\build\Release文件夹复制一份出来就是程序,运行里面的exe可执行文件即可
  2. 用安装包生成工具生成安装包
    Actual Installer Free打包

12、窗口左上角图标,任务栏图标,托盘图标

ultralight没做呢,自己19年开了个伊苏,到现在还没关:议题172


ultralight搭建/运行/打包相关推荐

  1. Quick cocos2dx-Lua(V3.3R1)学习笔记(十)-----搭建安卓打包环境,用官方示例anysdk生成apk运行...

    话说我这一篇就写搭建打包安卓环境,是不是有点过早了(其实我主要是怕以后重装系统,忘了怎么搭建了),但是迟早要面对的痛苦,一直延后也不是办法,对吧. 在官方文档中,对于打包安卓apk,已经很清楚了,我写 ...

  2. ionic 3.0+ 项目搭建运行

    基于ionic3.4.0的项目搭建 在写这篇文章的时候,ionic版本已经更新到3.4.0.手头上有一大堆ionic1.x版本的项目,也在这个基础上开发了许多第三方的插件.实在是按捺不住迭代重构的想法 ...

  3. SWT项目搭建、打包(可执行jar)、部署(包装exe)

    简述 SWT与Eclipse插件(RCP)不同.SWT比较原生,后者是基于前者而起的一个框架,它能结合Eclipse提供的功能自动的打成一个exe的可执行文件.而SWT需要做额外的操作. 本文记述了S ...

  4. 使用IDEA 1分钟搭建运行SpringMVC项目

    使用IDEA 1分钟搭建运行SpringMVC项目 文章目录 一.项目搭建 1.1. 新建项目 1.2. 选择maven项目构建 1.3. 设置组织名和模块名称 1.4 . 选择本地maven仓库 1 ...

  5. atlas 200 下载CANN包,搭建运行环境

    目录 1. 确认固件与驱动版本 2. CANN软件包的下载 3. CANN软件包的安装 3.0. 给HwHiAiUser账户root权限 3.1. 验证完整性 3.2. 下载安装脚本 3.3. 运行脚 ...

  6. vue-cli3.x正确打包项目,解决静态资源与路由加载无效的问题,history模式下配合使用nginx运行打包后的项目

    vue-cli3.x正确打包项目,解决静态资源与路由加载无效的问题,history模式下配合使用nginx运行打包后的项目 参考文章: (1)vue-cli3.x正确打包项目,解决静态资源与路由加载无 ...

  7. 原神私服搭建一: 搭建运行环境(jdk,mongodb)

    原神私服搭建一: 搭建运行环境(jdk,mongodb) 一:jdk: 链接:https://www.oracle.com/java/technologies/javase/jdk17-archive ...

  8. 图书馆借阅管理系统(图书管理系统),可提供远程搭建运行服务

    可提供远程搭建运行服务 不会调试运行的同学,你只需打开远程,会帮你搭建调试好一切(JDK.Idea/Eclipse.MySQL.Tomcat.Maven---) 有偿 点击获取源码 技术栈 java+ ...

  9. STF环境搭建运行及踩坑记录

    最初是在centos环境上搭建STF,由于种种依赖缺失.nodejs/npm版本不兼容.以及无解的"Segmentation fault (core dumped)"错误,最终还是 ...

最新文章

  1. Python图像处理介绍--彩色图像的直方图处理
  2. MySQL 查看约束,添加约束,删除约束 添加列,修改列,删除列
  3. 如何优雅的处理业务逻辑中的定时和延时问题?
  4. 文本分类入门(六)训练Part 3
  5. Python标准库07 信号 (signal包,部分os包)
  6. C++成员函数的内存分配问题
  7. 获取3的倍数_获取和设置pdf目录
  8. [转]Vi/Vim查找替换使用方法
  9. Uvaoj10054 - The Necklace
  10. Linux Shell 判断块设备节点是否存在
  11. 登录注册页面(连接MySQL8.0.15版本)
  12. Servlet线程安全性
  13. VB使用API的简明教程
  14. PCWorld:火狐浏览器已宣告死亡【转】
  15. 耐福-NTP8849音频功放芯片有哪些功能?
  16. Win 10 添加Epson网络打印机后刚开始可以打印,过一会就脱机
  17. Vistor-访问者模式
  18. Error while building/deploying project QTtest (kit: Desktop Qt 5.9.0 MinGW 32bit)When executing~
  19. 《信息安全保障》一1.3 信息系统安全保障概念与模型
  20. 第四次作业 个人学习总结 霍兰德- 职业兴趣测评

热门文章

  1. tc环境下的计算机绘画的方法,讨论学生电脑绘画制作的具体指导方法
  2. win7开机启动项怎么设置 电脑开机启动项在哪里设置
  3. 用Python爬取英雄联盟所有皮肤~隔壁小孩羡慕的哭了
  4. html表白earth,表白很感动的英语句子
  5. 概率编程:小明小红掷骰子
  6. BUUCTF 每日打卡 2022-1-16
  7. 方块方舟服务器维护,方块方舟主机连接超时 | 手游网游页游攻略大全
  8. Word2007如何从任意页开始设置页码 word07页码设置毕业论文
  9. 使用Fiddler进行抓包(Android)
  10. 黑苹果CLOVER引导去除多余引导项Windows10+MacOS+DeepinLinux+FydeOS+MintLinux+ManjaroLinux