kk_lee69 发表于 2014-7-8 20:50:38

AU3编译后 出错的时候,如何得知原本的行号??

AU3编译成执行档案之前 如果错误了 会有错误讯息提示 哪一行错误

编译成执行档案后错误行要嘛 -1要嘛好几千

跟原本的行数都不对了有办法知道 原本的行数吗?? 有技巧吗??

fuldho 发表于 2014-7-9 13:20:10

主要是#include <xxx.au3>

shqf 发表于 2014-7-10 14:09:30

本帖最后由 shqf 于 2014-7-10 14:14 编辑

因为存在include,编译时会将函数库里的函数导入,导致exe文件出错的行数与AU3文件不一致。有一法可一试,对于出现行数为正数时有点儿用: 在用SciTE编译AU3文件时,“源代码整理”标签页选中“编译前进行源代码整理”一项,在“代码迷惑”标签页选中“编译前进行代码加密”,参数填入/striponly,编译完成 后会多生成一个XXX_Obfuscated.au3,运行相对应的exe文件出错的行数,与运行XXX_Obfuscated.au3出错的行数相差几行(少几行),因为XXX_Obfuscated.au3中存在这样的情况,即一行代码过长时用连接符分成二行或几行写的。如果在XXX_Obfuscated.au3去掉所有连接符,将分成多行的代码写成一行,二者出错的行数应该一致了。用AuMerger_1.0.9.exe也存在同样情况,AuMerger如果能加上将分行写的代码还原成一行的功能,那楼主这样的问题就容易解决了。
页: [1]
查看完整版本: AU3编译后 出错的时候,如何得知原本的行号??