惠政号-企业网络推广-我们致力于为企业推广提供动力!

shellexecute头文件(ShellExecuteEx的一种玩法)

请大家先看看下面的示例代码:

image.png

上面代码十分简单,在调用ShellExecuteEx时,我们通过SHELLEXECUTEINFO结构体传入了两个参数:第一个是动作谓词(verb),另一个是需要执行此动作的目标文件。请注意,因为这个函数体中的代码执行完之后会立即返回,所以我们需要添加一个SEE_MASK_FLAG_DDEWAIT标志:通常情况下,ShellExecuteEx会认为当它返回之后,应用程序会维护一个消息循环。这就可以实现函数返回之后继续执行接下来那些必要的DDE交互,因为DDE服务器会返回对应的响应。

但是,如果线程直接退出了,或者此线程不是一个图形界面线程(GUI Thread),在这个例子中,这两个条件都得到了满足,你需要添加这个标志向操作系统表明:我这没有实现任何的消息处理循环,所以也没有办法完成接下来的DDE交互。通过设置SEE_MASK_FLAG_DDEWAIT标志,应用程序就是在告诉ShellExecuteEx:请你在返回之前完成所有的DDE交互操作。

不管怎样,我的本意是希望能演示如何使用动作谓词。因为看起来有一些朋友还没有意识到还可以这样玩,例如:
> shex find %windir%
此动作可以打开搜索窗口,并指定默认搜索的文件夹。

> shex openas C:\AUTOEXEC.BAT
此动作可以打开”打开方式”对话框,并指定目标文件。

总结

其实,这事儿可以这样理解,你对Windows做的所有图形操作,其基石都是代码,也即:可以通过写代码的方式完成各种图形界面动作。
来,跟我学一个单词:programmatically。

最后

Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一,里面有很多关于Windows的小知识,对于广大Windows平台开发者来说,确实十分有帮助。
本文来自:《Simple things you can do with the ShellExecuteEx function》

文/来源:漫漫开发路

版权声明:本文内容由互联网用户自发贡献以及网络收集编辑和原创所得,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任,详见本站的版权声明与免责声明。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 masunlu@qq.com 举报,一经查实,本站将立刻删除。 转载请注明出处:https://www.aqzrx.com/tgzl/9972.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~