manlty 发表于 2010-3-27 20:08:26

autoit脚本程序有没有可能运行从外部读到的代码?

比如怎么读取一个外部的txt文档里的一段代码,加入到自身程序里当作程序的代码执行。
或者从网络上取代码,然后执行

afan 发表于 2010-3-27 20:12:24

本帖最后由 afan 于 2010-3-27 20:14 编辑

Execute()

manlty 发表于 2010-3-27 20:19:07

本帖最后由 manlty 于 2010-3-27 20:20 编辑

版主,可能我表达的问题,您没仔细看明白
我是说,假如我将一个函数的代码放到网络上,让客户的脚本程序去读(客户的程序里没有这个函数,换句话说,我可以随时改变远端的这个函数的算法,客户端读取代码后执行),然后执行这个函数,能实现吗

afan 发表于 2010-3-27 20:24:31

我大概知道意思了,先下载函数脚本文件,在本地执行

manlty 发表于 2010-3-27 20:28:29

问题是,远端的这个只是一段代码,而不是编译好的程序啊。客户下载下来,也运行不了啊。有没有巧办法?

manlty 发表于 2010-3-27 20:29:35

autoit的程序允许将外部获取的一段字符当作一段程序代码来执行吗?

afan 发表于 2010-3-27 20:33:07

将 AutoIt3.exe (及函数库) 一起打包到客户端程序里面,应该就能够执行了。没试过~ :face (32):

afan 发表于 2010-3-27 20:43:13

我刚才卸载了Au3,直接用AutoIt3.exe 运行脚本文件,测试可行~

manlty 发表于 2010-3-27 20:51:35

谢谢版主,
不过我的应用是,远端的这部分代码是整个程序中一部分,只不过被我人为拆开了,将最重要的核心的部分放到远端了,所以远端的代码并不适合当作一个单独的脚本程序去运行,因为还有另一部分在客户的程序里,这拆开的两部分是组成完整的一个程序的不可分割的两部分,因为,他们之间还有逻辑关系,全局变量的共享等等
我还是想问版主,有没有可能将分开的代码重新组合后执行。

afan 发表于 2010-3-27 20:56:31

回复 9# manlty


    那总也得有个可执行程序吧,呵呵~
不懂,等高人来解决吧,我只是菜鸟一个

lynfr8 发表于 2010-3-27 21:55:54

远端的这部分代码是整个程序中一部分,只不过被我人为拆开了,将最重要的核心的部分放到远端了,所以远端的代码并不适合当作一个单独的脚本程序去运行,因为还有另一部分在客户的程序里,这拆开的两部分是组成完整的一个程序的不可分割的两部分,因为,他们之间还有逻辑关系,全局变量的共享等等
我还是想问版主,有没有可能将分开的代码重新组合后执行。
---------------------------------------------------------------------------------------------------------
应该是可以的
思路:
1.服务器存放着最重要的核心的部分代码,代码存放格式就是普通的txt就行了
2.客户程序代码主要是执行下载核心代码、编译合并后代码、生成可执行代码
3.非核心代码可以以变量模式存在主程序里,然后下载核心代码到本地硬盘一些比较隐藏的角落(如路径比较深的系统文件夹),然后主程序执行读取并合并两部分代码为au3,再编译为exe
4.当执行完毕你可以删除存放在本地硬盘的核心代码

manlty 发表于 2010-3-27 23:21:12

有没有更巧的办法,楼上的办法需要客户端装au3,要不怎么编译啊

lainline 发表于 2010-3-28 11:41:27

网络程序要比想象的复杂
程序代码能够正常执行是因为其确定性
如果代码放到网上延时问题将会使程序锁死
除非另外创建线程如果另外创建线程不如直接再运行一个程序算了

google 的翻译引擎函数好像就是放在服务器上的 但是这对服务器的要求也太高了

manlty 发表于 2010-3-28 13:10:48

楼上的行家,先不探讨网络延时等因素,理论上能不能找到办法实现代码从外部注入程序然后一并运行

lynfr8 发表于 2010-3-28 13:20:58

有没有更巧的办法,楼上的办法需要客户端装au3,要不怎么编译啊
manlty 发表于 2010-3-27 23:21 http://www.autoitx.com/images/common/back.gif

不用安装au3也可以编译的
传送门http://www.autoitx.com/viewthrea ... hlight=%B1%E0%D2%EB
页: [1] 2
查看完整版本: autoit脚本程序有没有可能运行从外部读到的代码?