易语言在启动其它EXE可执行程序时如何先执行自己设计的程序?

易语言在启动其它EXE可执行程序时如何先执行自己设计的程序?比如我点击启动大智慧股票软件时,程序便先执行我事先设计的程序。谢谢哪位高手指点!

可以用镜像劫持(IFEO, Image File Execution Options)。
如果大智慧股票软件的EXE文件名为『abcaaaaaa』,那么代码就是:

.版本 2

.局部变量 大智慧文件名, 文本型

大智慧文件名 = “abcaaaaaa”
写注册项 (4, “SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\” + 大智慧文件名 + “.exe\debugger”, 取运行目录 () + “\” + 取执行文件名 ())

只要把里面的 大智慧文件名 的值替换掉就行了。
不过现在的杀软都检测镜像劫持,所以如果修改一般都会报警的。追问

首先谢谢您的回答 !还有个问题不明白:请问我要加入的程序怎么写代码?您说把大智慧文件名的值给改了 那么 要改成新的值是什么?是我要加入自己设计的程序的值?如果是这个值 那么这个值该如何获得 和 加入呢 ?谢谢

追答

晕死……
刚下了个专业版,文件名是:dzh2.exe
值设定为dzh2。
对了,有一点忘了说了,一定要在执行前重命名文件,不然运行后还是会提示的。
如果为了安全些可以找个叫做『内存执行PE文件』的模块,把数据加进去然后如果密码正确就内存执行(不需要写到文件,而且不需要镜像劫持。)

追问

很感谢您的回答!我是个菜鸟刚接触易语言,您能否发个完整的代码到我邮箱 [email protected] 谢谢

追答

源码发送完毕,为压缩包文件。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-24
我表示无法理解!
第2个回答  2011-05-24

编译成模块,『_启动子程序』加上
.版本 2

.子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码

.如果真 (是否为调试版 ())
结束 ()

判断是否为调试版,如果是就退出。
当然可以在结束前面加上
输出调试文本 (“禁止调试”)
来告诉使用者不能调试。
第3个回答  2011-05-24
把后运行的程序写到资源里面去就可以了

先运行你程序的代码,然后再运行资源里面的程序