用Delphi实现动态获取版本信息
日期:2007年6月29日 作者: 查看:[大字体 中字体 小字体]-
szLang,这个参数指向一个缓冲区。这个缓冲区用于存储由wLang参数所确定的、用来描述语言的、以NULL结尾的字符串。
nSize 指定缓冲区的大小,单位是字符数量。
函数将返回存储在缓冲区中字符串的以字符为单位的大小。返回值不包含结束NULL字符。如果描述字符串小于或等于缓冲区的大小,那么整个描述字符串将保存在这个缓冲区中;否则,缓冲区中将之保留描述字符串的前面大小等于缓冲区大小的部分。
如果发生错误,返回值将等于0。未知的语言标识符不会产生错误。
通常,安装程序通过这个函数来翻译从VarQuery函数返回的语言标识符。当出现语言冲突的时候,这个得到的文本字符串便可以用在一个向用户询问怎样处理的对话框中,提示用户进行处理。
1.4. VerQueryValue函数
VerQueryValue函数被用来从指定的版本信息资源中获取指定版本信息。最常用的获取版本信息的逻辑流程是:先调用GetFileVersionInfoSize函数,紧接着再调用GetFileVersionInfo函数,最后再调用VerQueryValue函数。其Delphi函数声明如下:
function VerQueryValue(
pBlock: Pointer; // 存放版本资源的缓冲区
lpSubBlock: PChar; // 期望获取的值
var lplpBuffer: Pointer; // 指向存放版本值缓冲区的指针
var puLen: UINT // 版本信息长度
): BOOL; stdcall;参数说明:
pBlock,一个指向用于存储版本信息资源的缓冲区的指针,这个版本信息资源是从GetFileVersionInfo函数返回的。
lpSubBlock,指向一个零结尾的字符串,指定到底获得哪个版本信息值。这个字符串必须由被反斜线符号(\)分开的名字组成如下格式之一:
→“\”,指定根区域。函数将返回一个指向VS_FIXEDFIELDFILEINFO结构的版本信息资源。
→“\VarFileInfo\Translation”,指定一个保存在可变类型变量信息的结构中的转换阵列。函数返回一个指向语言和代码页标识符数组的指针。应用程序可以使用这些标识符来访问存储在版本信息资源中的特定语言字符串表结构。
→“\StringFileInfo\lang-codepage\string-name”,指定存储在特定语言字符串表中结构的值。其中,lang-codepage的书写格式是:用双字(DWORD)表示的、保存在资源中的转换阵列的语言与代码页标识符对,并且需要书写成十六进制形式的字符串;string-name必须是在后面注释中预定义的字符串之一。函数根据指定的语言与代码页,返回一个与之相关的字符串。
lplpBuffer,一个指向用于保存指向被请求的版本信息缓冲区的变量的指针。简单的说,就是一个指向指针的指针。
puLen,指向一个保存版本信息长度的缓冲区。
如果指定的版本信息结构存在并且有效,函数将返回一个非0值。如果长度缓冲区的地址等于0,指定的版本信息名称将无效。
并且,在指定的名称不存在或指定的资源无效时,函数的返回值将等于0。
以下列表是预定义的版本信息统一字符编码标准字符串:
Comments、InternalName、ProductName、CompanyName、LegalCopyright、ProductVersion、FileDescription、LegalTrademarks、PrivateBuild、FileVersion、OriginalFilename、SpecialBuild
二、一个关于版本信息函数使用的实例
下面开始,我们给出一个实例。通过这个实例,大家可以学习到在我们自己编写的应用程序中怎么使用这些函数来达到获取文件版本信息的目的。 - 上一页 [1] [2] [3] [4] [5] [6] 下一页
-
- 用Delphi实现动态获取版本信息 相关文章:
- ·还原Windows Vista所有被隐藏更新及信息
- ·黑客入侵前的信息收集
- ·QQ盗号木马盗取帐号与重要信息
- ·.NET中取得IP/用户名等信息常用方法
- ·窗口偷窥者监视IE盗取用户信息
- ·内容拷贝增加版权信息的JavaScript代码
- ·个人信息安全迫在眉睫
- ·QQ2007II Beta1新版QQ群消息设置技巧
- ·网站信息被抄袭 找查发状告客齐集
- ·WPS表格提取身份证详细信息
- 用Delphi实现动态获取版本信息 相关软件
- ·大息地网络诗歌杂志2005第1期
- ·AAA Words--高等教育自学考试英语词汇全息速记 V3.1
- ·2005年中考试题信息的传递
- ·高等教育自学考试英语词汇全息速记
- ·电子商务市场信息学试卷
- ·建设监理师之建设工程信息管理部分
- ·2005版监理考试用书-信息管理
- ·2005监理考试过关题库-信息
- ·监理工程师执业考试信息管理部分模拟试题
- ·监理工程师执业考试信息管理部分模拟试题
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·Delphi下的ADO使用方法!
- ·在Delphi中实现数据分析模块的动态报表
- ·在Delphi中控制扫描仪
- ·用拼音首字符来实现检索功能
- ·让Delphi的DBGrid支持鼠标轮
- ·自 动 隐 藏 的 声 象 按 钮
- ·OpenGL简介
- ·用Delphi制作动态有声标签
- ·从 实 例 看 Delphi 4 中 的 动 态
- ·Delphi中为DBGrid控件添加色彩
- ·常用的BCB & Delphi 函数
- ·产生不重复随机数的简便算法
- ·陈经韬2002原创资料
- ·Delphi2005试用版安装指南
- ·Delphi中ListBox控件的六种特效
- ·第三方控件使用方法
- ·关于SMTP和POP3使用及关于客户-服务端的自动连线问题
- ·关于MP3中的ID3V2格式探讨及我写的ID3V2读取源码
- ·监视打印机部分线程内容
- ·获取其他进程中ListView的文本
