b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

shellexecuteinfo_afxres.rc_acrord32参数(5)

电脑杂谈  发布时间:2016-12-28 12:06:24  来源:网络整理

ShellExecuteEx(&sei);

如果指定了SEE_MASK_DOENVSUBST标志,则可以在lpFile和lpDirectory中使用任何环境变量。例如,要打开Windows目录,可以表示为%WINDIR%。

最后,我们获得了由ShellExecuteEx()导出的应用的同步能力。在设置了SEE_MASK_NOCLOSEPROCESS位到fMask成员后,新进程的handle将由hProcess成员返回,因此这一行代码:WaitForSingleObject(sei.hProcess, INFINITE);将导致调用的应用阻塞,等待另一个应用终止。

显示文件属性对话框

SEE_MASK_INVOKEIDLIST标志是一个重要标志,因为这是ShellExecuteEx()另一个优于ShellExecute()的亮点:它允许函数象执行静态动词那样唤醒动态动词。前面解释过,动态动词是运行时由Shell扩展的关联菜单添加的。其工作方法是:如果ShellExecuteEx()不能在静态动词列表中找到这个动词,它就试图寻找给定文件的关联菜单。这个搜索引出IContextMenu接口指针。然后通过接口暴露的方法唤醒动态动词。

作为这个操作的结论,我们可以很容易地显示文件的属性对话框—与右击文件,然后选择属性显示的对话框相同。这里是一个简单的例子函数:

void ShowFileProperties(LPCTSTR szPathName)

{

SHELLEXECUTEINFO sei;

ZeroMemory(&sei, sizeof(SHELLEXECUTEINFO));

sei.cbSize = sizeof(SHELLEXECUTEINFO);

sei.lpFile = szPathName;

sei.nShow = SW_SHOW;

sei.fMask = SEE_MASK_INVOKEIDLIST;

sei.lpVerb = __TEXT("properties");

ShellExecuteEx(&sei);


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23692-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...