又逢2月竞赛月,一年一度的全国中小学生信息素养大赛又拉开了序幕,既然是信息素养大赛,必不可少的肯定有创意编程的项目,而小学组别参将创意编程的大多数孩子还是使用scratch作为编程软件的。

而在文件中有这么一个要求:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(1)

软件作品需编译成可执行程序。

这个就比较微妙了,因为笨笨老师也有学生参加了创意编程比赛,以往比赛都是直接提交.sb3后缀名的scratch源文件就可以了,而今年家长反馈说学校老师一定要让娃提交exe可执行文件。

然后家长问老师:自己只有scratch源文件,不知道怎么转成exe可执行文件,然后老师也说不知道。

emmm。。。这个。。。好吧,看来只能笨笨老师来发一下技术贴了,解决一下大家对于scratch3.0的.sb3类型源文件封装转化成exe可执行文件的方法了【PS:暂时找到的只有封装成exe可执行文件的,所以mac os系统的同学们别着急,针对mac电脑的方法笨笨老师也在研究中,封装成功的话,笨笨老师会将封装方法一起发出来,敬请期待】

笨笨老师也是搜寻了很多网上和其他途径的方法,然后亲身经历,一个一个尝试,最终总结归纳出来的比较完整的封装流程。

首先我们需要这么几个工具来帮助我们进行封装工作:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(2)

htmlifier-offline.html

这个工具是用来将scratch3.0的.sb3类型源文件转化成为html5类型文件的。

nwjs-v0.61.0-win-x64.zip

这个工具需要先解压再使用,目的是为了程序封装前的准备。

makesfx.exe

这个工具就是将之前解压的nwjs-v0.61.0-win-x64.zip连同你的scratch3.0源程序直接封装成为exe可执行文件的最后压缩封装的工具。

封装完成之后,不再需要scratch软件,直接打开封装成功后的exe文件即可直接运行封装的scratch3.0的程序。

因为这个功能可能很多老师和家长都有需求,所以就不设置回复获取工具了,当然大家可以关注一下笨笨老师公众号就再好不过了,哈哈哈哈,我直接将工具下载地址列出来,有需要的个人自行下载即可:

百度网盘:

链接:

https:///s/1ANnfCaobiJDdPn3usa7x_g

提取码:7x8l

好,废话不多说,接下来就是详细的封装操作说明:

第一步:

双击打开htmlifier-offline.html

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(3)

然后我们就会看到这样一个网页:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(4)

然后我们要做的操作是:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(5)

实际效果是:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(6)

经过上述操作得到:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(7)

设置好了之后,将网页往下拉,

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(8)

点击之后会显示:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(9)

浏览器自动下载的文件,一般会自动保存在c盘的下载文件夹中,也就是这里:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(10)

自动生成和下载的文件名称是:result.html

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(11)

这里是不是就有人问了,不对啊,之前我在上一个黑色的网页里操作过,是明确了改了名字的,怎么这里是这个名字?

先别急,接着看下去。

为了检验转化的html5成不成功,我们双击打开这个result.html文件看一下:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(12)

所以,没有问题,名字也ok,程序也是直接在网页上运行的。

接下来的步骤就比较关键了,请大家注意力集中了!~~

我们需要先把nwjs-v0.61.0-win-x64.zip给解压缩了,我们会得到这么一个文件夹:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(13)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(14)

接下来的步骤会比较麻烦,请仔细学习,

我们需要先新建立一个文本文档:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(15)

然后将它改名为:package.txt,我们就会得到:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(16)

然后打开package.txt,将以下内容全部复制到打开的package.txt文档中并保存文件:

{

"name": "result",

"main": "result.html"

}

如图:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(17)

是不是觉得result.html看起来很眼熟?

没错了,这个就是我们转化出来的html5的那个文件了!对,就是它!~【其实这里是可以进行名字修改的,但是为了最简单化操作,建议不修改会更方便】

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(18)

接下来我们要做的一步就是将刚刚输入并保存好内容的txt文件转化成为json类型文件,做法也很简单,右键刚刚的package.txt,然后选择重命名,将文件名package.txt中的txt改成json,我们就得到了一个package.json文件,如图所示:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(19)

然后的操作就比较简单了,请将刚刚改好名字的package.json和之前得到的result.html文件放到nwjs-v0.61.0-win-x64文件夹中,

【当然:如果觉得这一步麻烦的朋友,笨笨老师已经在给的资料文件中为大家准备好了package.json文件了,只需要下载笨笨老师提供的文件,然后直接将package.json和之前得到的result.html文件放到nwjs-v0.61.0-win-x64文件夹中就可以啦】

如图所示:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(20)

接下来也就是最简单和最令人感兴趣的封装收尾的一步了。

请打开我们的makesfx.exe工具

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(21)

我们会看到:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(22)

然后请注意:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(23)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(24)

当然这个文件夹的位置就看大家放在哪儿了,请自行查找。

选择正确的源文件之后,我们得到:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(25)

然后我们点击这个:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(26)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(27)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(28)

接着我们需要点击:

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(29)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(30)

接下来就是最后一步了!~!~!~

请点击:最右下角的Make SFX按钮

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(31)

然后你会看到~~~

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(32)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(33)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(34)

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(35)

ok,在弹出成功对话框后,选择确定按钮,然后我们就得到了已经封装成功的可执行文件啦!~

它长这个样子~~~!

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(36)

然后我们双击它运行看看!!

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(37)

显示一个运行进度条,等进度条读完,我们的程序就正式运行了!

scratch1.4编程教程(Scratch3.0文件封装成exe可执行文件)(38)

程序名称和全屏放大按钮全部都在,并且舞台效果,声音,动态互动,触发等功能全部正常!~完美!~!~撒花 !~~~

【PS:不过以上封装仅限于使用scratch3.0原生程序模块的编程,如果有加载其他功能的智能组件库的,以上封装方法就不能成功封装了,请大家注意哦~~】

,