allegro 自动批量创建device文件

来源:互联网 发布:金钻js防水 编辑:程序博客网 时间:2024/05/22 18:18

学习allegro,画一块板子时,老师给了个封装库,可惜里面没有device文件,导入第三方网标时却必须有。老师让一个一个的创建,太麻烦,随想办法搞了个自动创建的脚本。

思路如下:

一、allegro 中录制创建device文件的脚本;

file -> script ; record; 开始录制脚本

file -> Create Device;创建device文件

ctrl + s 保存,确定。

创建好的脚本位于 封装文件所在的目录。我创建好的:create_device_file.scr。

二、修改设置,将 allegro 中 脚本路径指向 上述脚本所在的文件夹。可提前将脚本移至想要设置路径的文件夹。

三、为脚本创建快捷键,方法有很多种,我是修改的env文件,设置了F9为快捷键。

alias F9 "replay create_device_file"

四、执行脚本。

脚本采用了批处理方式,依次打开脚本所在文件夹中的 封装文件,中间间接引用vbs脚本,模拟向程序发送 F9 + 回车 按键,让软件进行脚本创建,最后,kill掉软件进程来关闭软件,循环打开下一个封装文件,循环最后,删除vbs文件。脚本如下:

@for /f "delims=" %%i in ('dir /b *.dra') do (>tmp.vbs echo set x=createobject^("wscript.shell"^)>>tmp.vbs echo wscript.sleep 10>>tmp.vbs echo x.run "%%i",1>>tmp.vbs echo wscript.sleep 4000>>tmp.vbs echo x.sendkeys "F9">>tmp.vbs echo x.sendkeys "{ENTER}">>tmp.vbs echo x.sendkeys "{ENTER}">>tmp.vbs echo wscript.sleep 4000cscript //nologo tmp.vbs & del tmp.vbstaskkill /f /im allegro.exe)

需要注意,sleep时间,可根据自己电脑速度进行调整。F9快捷键也可根据自己的设置进行调整。

但是!特别要注意!软件运行过程中一定不能乱点鼠标,会造成键盘输入到其他地方,从而创建device文件失败!

本来不会写 批处理文件和vbs代码,都摘自网络,拼拼凑凑,居然可以运行!感谢每个分享的人!


2016-03-15更新,修改了软件退出方式,以改正生成过程中造成的上锁问题。

如果封装文件已经上锁,请删除文件夹下的.lck文件。

代码: 使用 taskkill 相当于外部将allegro进行强行结束,可能造成文件上锁。

2016-03-15版本修改为向软件发送exit命令,使其正常自动退出。

最后附上我制作好了的所有文件和说明:

http://download.csdn.net/detail/shenyexingkong/9462042


0 0
原创粉丝点击