嫌deno程序命令行启动很麻烦?试试看在Windows上双击打开?

in 前后端开发 with 0 comment

相信在看的一定深有同感,打开cmd输入一长串命令才能启动一个小程序
但是这还好,使用PowerShell即可,有历史记录。但是如果是作为一个自动化脚本呢
在linux上可以加上特使的一行

 #!/bin/deno run -A

但是Windows就不行。怎么办?我提供了两个办法,你可以按需选取

打包

打包后

将ts程序嵌入到deno就行了,deno运行环境提供了这个功能,叫做compile

打包

简单吧,但是有一个大坑需要注意
为什么我在compile后加上了-A呢,因为这样双击打开后就不会阻塞程序询问权限问题
只是这堪比 Eletron 程序的大小,难以接受

大小

绑定打开方式

那么,有没有办法实现ts程序双击打开呢?比如这样

打开方式

行啊,不过还需要修改注册表。根本上也很简单,就3步

1

2

这一步呢选取你的deno程序路径就行了。什么?你说找不到deno在哪里?

C:\> deno eval "console.log(Deno.execPath())"
// 返回的就是路径,如我的是 C:\Windows\deno.exe

下面一步很重要,不然deno识别不了,只会一闪而过,立刻退出

3

这样就行了,如果选中了“始终使用此应用打开...”那么双击就有效果了

结束

最后说一说缺点,那就是没法当作自动化程序使用。
本质上这个方法还是设置脚本的打开方式,对于只认exe程序的Windows系统而言是不认识ts脚本的
因此,总结一下

  1. 需要当作程序但是又想要动态更新、节省空间的使用 方法2
  2. 需要作为自动化程序(如Natter的更新回调)的使用 方法1
  3. 想要作为WebAPP发布的使用 方法1,如搭配我的文章 deno+WebView2 实现桌面应用
Responses