Html打包成exe或者真单exe的web服务方案

使用Gridea生成静态内容,,已修改模板实现全部链接为相对链接。

理论上拿到outpt文件夹后双击其中的index.html就能在浏览器内浏览,在此前提下想实现以下其中之一

1、在output文件夹同级的地方放置一个index.html的快捷方式,但是使用相对路径,保证在其他设备或路径也能直接双击打开,【最好不要用bat

2、打包成exe【试过NW.js但是生成的文件好像非常大???

3、只有一个exe的web服务,可以和output放在同一路径下,双击运行并自动打开浏览器,可以设置默认托盘启动,可以有一个ini或json来保存配置项

主站介绍过不少
https://www.appinn.com/?s=服务器

这么做的需求是什么? 我还没见过不用安装的服务器。

第一条应该是最简单的,我猜楼主不想使用bat的原因是不想看到控制台窗口,其实还是有办法可以隐藏的。
然后TechNet上有这样一个工具,可以将powershell脚本转成exe PS2EXE-GUI
新建一个内容为Start-Process ./output/index.html的ps1文件,经由PS2EXE打包之后应该可以做到第一条。默认勾选了Compile a graphic windows program (parameter -noConsole)来隐藏控制台窗口。
不过,它打包exe的过程依赖于系统,所以Win7和Win10打包出来的exe并不通用。你可以在Win10上安装.NetFramework 3.5然后使用Win7打包的exe, 或者在Win7上安装WMF,然后使用Win10打包的exe. 原始回复如下:

You have two choices when you want to use one binary:

  • install .Net 3 on Windows 10 and use PowerShell V2 there with a config file that enforces PowerShell 2
  • install WMF 5.1 on Windows 7 so you can use PowerShell V5.1 there with a config file that enforces PowerShell 5.1

你试试HTA格式: HTML Application

详见https://baike.baidu.com/item/HTA/262732

最终选择的方案是用typora生成一个start.html,引导链接至output/index.html