Batch file 通过cmd/batch不使用#include编译autoit脚本
我在MC ND的帮助下制作了这个脚本,它可以工作,但是如果我在autoit文件中包含了Batch file 通过cmd/batch不使用#include编译autoit脚本,batch-file,compiler-construction,autoit,Batch File,Compiler Construction,Autoit,我在MC ND的帮助下制作了这个脚本,它可以工作,但是如果我在autoit文件中包含了#include,它将抛出一个错误。如果#include不存在,它就可以工作。如果我使用autoit自身编译它,那么它可以编译。这是我的代码: @echo off setlocal enableextensions disabledelayedexpansion for %%a in ("%cd%\*.au3") do ( Aut2exe.exe /in "%%~fa" /ou
#include
,它将抛出一个错误。如果#include
不存在,它就可以工作。如果我使用autoit自身编译它,那么它可以编译。这是我的代码:
@echo off
setlocal enableextensions disabledelayedexpansion
for %%a in ("%cd%\*.au3") do (
Aut2exe.exe /in "%%~fa" /out "%%~dpna.exe" /icon "%%~dpa\icon.ico" /x86 /comp 4
)
endlocal
xcopy *.exe Compile\*.exe
del /f *.exe
xcopy /D /I /V /Y Compile\Aut2exe.exe
del /f Compile\Aut2exe.exe
如果有人能帮忙,谢谢。来自
AutoIt使用的搜索顺序取决于“包含您”的形式
使用。下表显示了使用搜索的订单目录
两种形式
使用#包括
标准库
The path of the currently running interpreter with "\Include" appended is
searched.
用户定义库
The registry value mentioned above is read and each directory is searched
in the order they appear in.
脚本目录
The directory of the currently executing script.
AUT2 exe使用与AutoIt3.exe相同的算法,唯一的区别是
它将Include子目录作为同级目录查找,以
本身(..\Include)
从您发布的代码中,“似乎”您已将aut2exe
复制到脚本文件夹中,但您所引用的文件位于标准库文件夹中,根据文档,将找不到该文件
你可以
- 将
复制到保存脚本的同一文件夹中constants.au3
- 将注册表项配置为指向包含文件的文件夹
- 从autoit标准发行版的文件夹中调用
文件,以便找到include文件夹aut2exe
- 将
指令更改为#include
,以直接指向include文件#include“path\filename”
G:\Program Files(x86)\AutoIt3\Include
。并且,HKEY\U CURRENT\u USER\Software\AutoIt v3\AutoIt\Include
的内容是…?@MCND此注册表项不存在。