教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> 编程基地 >> VB >> 未公开API函数揭秘——通用对话框 RSS订阅
未公开API函数揭秘——通用对话框
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   
未公开API函数揭秘——通用对话框


COMDLG32.DLL 为我们提供了一些很有用的对话框,但是仍然有部分我们可能会用到的系统对话框它却没有提供。如果试图复制这些系统对话框将是一件麻烦的苦差事。幸好shell32.dll为我们提供了这些对话框,本文将带你去发掘一些未公开的API函数,以实现这些对话框。

在使用未公开的API函数之前,你必须知道声明未公开的API函数与声明那些公开的API函数略有不同,那就是,你必须用到未公开API函数的顺序号(ordinal number)。这个顺序号就是未公开函数的别名。也就是说在声明未公开API函数时,必须加上它的别名。例如下面要说到的PickIconDlg函数的顺序号为62,它的别名就是"#62"。如果不这样做,系统会提示你找不到函数的入口点。

选取图标

BOOL WINAPI PickIconDlg(
HWND hwndOwner,
LPSTR lpstrFile,
DWORD nMaxFile,
LPDWORD lpdwIconIndex);
该函数的顺序号为62。

hwndOwner拥有该对话框的窗口句柄 lpstrFile指向一个缓冲,包含初始的文件名。函数返回后它就包含新的文件名。nMaxFile指定缓冲的大小,以字符为单位。 lpdwIconIndex指向一个变量其中包含基于零的图标的索引。函数返回后它包含新图标的索引值。 如果用户选择了图标,则返回值为真,如果用户选择取消按钮或是系统菜单的关闭选项则返回值为假。

运行程序对话框

void WINAPI RunFileDlg(
HWND hwndOwner,
HICON hIcon,
LPCSTR lpstrDirectory,
LPCSTR lpstrTitle,
LPCSTR lpstrDescription,
UINT uFlags);
该函数的顺序号为61。在VB中可声明如下:

Private Declare Function RunFileDlg Lib "shell32" Alias "#61" (ByVal hwndOwner As Long, ByVal hIcon As Long, ByVal lpstrDirectory As String, ByVal lpstrTitle As String, ByVal lpstrDescription As String, ByVal uFlags As Long) As Long

其中uFlags参数的可选值为

RFF_NOBROWSE 0x01 Removes the browse button.
RFF_NODEFAULT 0x02 No default item selected.
RFF_CALCDIRECTORY 0x04 Calculates the working directory from the file name.
RFF_NOLABEL 0x08 Removes the edit box label.
RFF_NOSEPARATEMEM 0x20 Removes the Separate Memory Space check box (Windows NT only).

来源:upschool.cn
作者:
关键字:话框
发表日期:2006-12-20 20:10:29

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:使用调用外部程序函数实现API函数高级功能   下一篇:用API函数控制光驱的开关


2009-1-10 10:44:41
本文的相类似文章
  • Dioo病毒弹对话框并修改系统设置
  • Sober新变种弹出无病毒对话框
  • 恶意病毒弹出“点500下”对话框
  • VB 显示"关机提示"对话框
  • “打开”对话框同时选择多个文件
  • VB的OPEN对话框控件图示功能扩充
  • 从公共对话框控件中提取多个文件名称
  • 调用“添加打印机”对话框
  • Access下如何使用通用对话框
  • 关于公共对话框控件选取多个文件的问答
  • 在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com