找回密码
 加入
搜索
楼主: haijie1223

[原创] run和ShellExecute的区别

 火... [复制链接]
发表于 2012-2-11 20:52:11 | 显示全部楼层
我觉得最重要的区别还是没有说出来
Run()的实质是从内核发起进程,只认二进制类型,与扩展名无关 (测试方法,把exe改bin,用RUN运行,完全能打开,不信试试)
ShellExecute()从名称已经说明本身了,它是调用Explorer的Shell外壳,只要Shell能解释的,它也能

8楼的说法是不严谨的,当WinWord.exe在环境变量Path中时,RUN()也可以打开的

评分

参与人数 1金钱 +30 贡献 +2 收起 理由
iori2882 + 30 + 2 谢谢 解释了我的疑惑

查看全部评分

发表于 2012-2-11 20:53:50 | 显示全部楼层
欢迎继续拍砖
发表于 2012-2-12 22:16:31 | 显示全部楼层
不错的解释!
发表于 2012-2-12 22:32:55 | 显示全部楼层
原来这个ShellExecute这么好使啊,以后运行程序不怕找不到路径了,哈哈
发表于 2012-2-13 09:33:52 | 显示全部楼层
不错的帖子,对于我等菜鸟帮助很大,进一步了解函数的应用。
发表于 2012-2-15 22:59:26 | 显示全部楼层
谢谢楼主分享心得!
发表于 2012-2-16 09:54:35 | 显示全部楼层
呵呵,,,很不错的哦,加油!!!
发表于 2012-2-16 20:41:31 | 显示全部楼层
不错的知识贴,支持分享
发表于 2012-3-7 15:34:19 | 显示全部楼层
这个问题正好解决了,我昨天写一个要显示处理完的txt文件的例子。
发表于 2012-3-14 19:54:38 | 显示全部楼层
16楼正解啊
 楼主| 发表于 2012-3-15 11:32:37 | 显示全部楼层
回复 16# Qokelate


如果把exe扩展名直接删掉,Run好像就不能运行了。
发表于 2012-3-15 11:57:18 | 显示全部楼层
本帖最后由 Qokelate 于 2012-3-15 12:03 编辑

回复 26# haijie1223


    这是Windows本身设计时特定的,它过滤了某些条件,这种情况理论上也是可以运行的,不过这可能需要你自己去找相应API去绕过那些过滤并发起进程了,另外,当一个文件没有扩展名时,双击它的弹出的关联打开菜单中那个 总是用XXX打开 是不可选的,这只能问MS为什么要这样做了
发表于 2012-3-22 16:39:11 | 显示全部楼层
不错,时候我这种菜鸟,谢谢分享
发表于 2012-3-25 16:46:27 | 显示全部楼层
学习下,多谢分享
发表于 2012-4-14 00:11:08 | 显示全部楼层
谢谢分享,对刚接触Au3的菜鸟很有用
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 12:44 , Processed in 0.076009 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表