windows shell 编程3(函数解释)
2010-06-27 17:04
411 查看
详细解释一下 Shell 编程中最基本的一些函数、结构体和枚举。
SHGetDesktopFolder
获取桌面的 IShellFolder 接口
要使用这个函数,必须先定义一个 IntPtr 指针。然后通过指针,使用 GetObjectForIUnknown 返回通过指向 COM 对象的 IShellFolder 接口的指针实例。于是需要编写以下函数:
代码
因此,我们可以通过 flags 的不同来分别列举子文件和子目录。这里会遇到一个问题,怎么获取 PIDL 对象的名称呢。这里编写了2个函数,可以通过 PIDL 或者 IShellFolder 返回对象的名称。
SHGetDesktopFolder
获取桌面的 IShellFolder 接口
[DllImport("shell32.dll")] public static extern Int32 SHGetDesktopFolder(out IntPtr ppshf);
要使用这个函数,必须先定义一个 IntPtr 指针。然后通过指针,使用 GetObjectForIUnknown 返回通过指向 COM 对象的 IShellFolder 接口的指针实例。于是需要编写以下函数:
代码
public enum SHCONTF { FOLDERS = 0x20, NONFOLDERS = 0x40, INCLUDEHIDDEN = 0x80, INIT_ON_FIRST_NEXT = 0x100, NETPRINTERSRCH = 0x200, SHAREABLE = 0x400, STORAGE = 0x800 }
因此,我们可以通过 flags 的不同来分别列举子文件和子目录。这里会遇到一个问题,怎么获取 PIDL 对象的名称呢。这里编写了2个函数,可以通过 PIDL 或者 IShellFolder 返回对象的名称。
相关文章推荐
- (C#)Windows Shell 外壳编程系列2 - 解释,从“桌面”开始展开
- (C#)Windows Shell 编程系列2 - 解释,从“桌面”开始展开
- (C#)Windows Shell 外壳编程系列2 - 解释,从“桌面”开始展开
- (C#)Windows Shell 编程系列2 - 解释,从“桌面”开始展开
- Windows Shell 编程 第六章 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987951】
- shell编程控制结构:expr、let、for、while、until、shift、if、case、break、continue、函数、select .
- Windows Shell 编程 第四章
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
- VC Windows shell扩展编程(为系统右键菜单添加二级菜单傻瓜教程)
- 70个shell常用操作、 shell编程控制结构:expr、let、for、while、until、shift、if、case、break、continue、函数、select
- Windows Shell 扩展编程 第十五章
- Windows Shell 编程
- 【Linux 系统编程】shell 脚本基础学习之函数(五)
- Linux 多线程编程入门--线程函数解释
- 基于visual c++之windows核心编程代码分析(44)监测任意程序函数起始地址
- (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令
- Windows Shell 编程
- windows下的托盘编程(Shell_NotifyIcon)
- (C#)Windows Shell 编程系列3 - 上下文菜单(iContextMenu)(一)右键菜单
- shell脚本编程之函数