当前位置: 首页 > article >正文

10.7 获得程序版本信息

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

FileVersionInfo类在System.Diagnostics命名空间下。它为磁盘上的应用程序(*.exe)、动态链接库(*.dll)文件提供版本信息。

FileVersionInfo主要属性(都是只读属性):

  1. Comments:获取与文件关联的注释。
  2. CompanyName:获取生成此文件的公司的名称。
  3. FileBuildPart:获取文件的生成号。
  4. FileDescription:获取文件说明。
  5. FileMajorPart:获取版本号的主要版本号部分。
  6. FileMinorPart:获取文件版本号的次要部分。
  7. FileName:获取:FileVersionInfo:的此实例所描述的文件的名称。
  8. FilePrivatePart:获取文件专用部件号。
  9. FileVersion:获取文件版本号。
  10. InternalName:获取文件的内部名称(如果存在)。
  11. Language:获取版本信息区的默认语言字符串。
  12. LegalCopyright:获取所有适用于指定文件的版权声明。
  13. LegalTrademarks:获取应用到文件的商标和注册商标。
  14. OriginalFilename:获取创建文件时所使用的名称。
  15. PrivateBuild:获取文件私有版本的信息。
  16. ProductBuildPart:获取该文件关联产品的生成号。
  17. ProductMajorPart:获取与此文件关联的产品版本号的主要部分。
  18. ProductMinorPart:获取文件关联产品版本号的次要部分。
  19. ProductName:获取与此文件一起发行的产品的名称。
  20. ProductPrivatePart:获取此文件关联产品的专用部件号。
  21. ProductVersion:获取与此文件一起发行的产品的版本。
  22. SpecialBuild:获取文件的特殊内部版本信息。

【例 10.32【项目:code10-032】枚举ini文件的键值对。

        private void button1_Click(object sender, EventArgs e)

        {

            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "程序|*.exe;*.dll";

            ofd.Multiselect = false;

            if (ofd.ShowDialog() != DialogResult.OK)

                return;

            string filename = ofd.FileName;

            System.Diagnostics.FileVersionInfo fileversion = System.Diagnostics.FileVersionInfo.GetVersionInfo(filename);

            string fileinfo  = "";

            fileinfo += "文件的名称:" + fileversion.FileName + "\r\n" ;

            fileinfo += "公司的名称:" + fileversion.CompanyName + "\r\n" ;

            fileinfo += "注释:" + fileversion.Comments + "\r\n" ;

            fileinfo += "文件说明:" + fileversion.FileDescription + "\r\n" ;

            fileinfo += "主版本号:" + fileversion.FileMajorPart.ToString() + "\r\n" ;

            fileinfo += "次版本号:" + fileversion.FileMinorPart.ToString() + "\r\n" ;

            fileinfo += "生成号:" + fileversion.FileBuildPart.ToString() + "\r\n" ;

            fileinfo += "专用部件号:" + fileversion.FilePrivatePart.ToString() + "\r\n" ;

            fileinfo += "文件版本号:" + fileversion.FileVersion + "\r\n" ;

            fileinfo += "默认语言:" + fileversion.Language + "\r\n" ;

            fileinfo += "版权声明:" + fileversion.LegalCopyright + "\r\n" ;

            fileinfo += "注册商标:" + fileversion.LegalTrademarks + "\r\n" ;

            fileinfo += "产品名称:" + fileversion.ProductName + "\r\n" ;

            fileinfo += "产品版本:" + fileversion.ProductVersion.ToString() + "\r\n" ;

            fileinfo += "主版本号:" + fileversion.ProductMajorPart.ToString() + "\r\n" ;

            fileinfo += "次版本号:" + fileversion.ProductMinorPart.ToString() + "\r\n" ;

            fileinfo += "内部版本号:" + fileversion.ProductBuildPart.ToString() + "\r\n" ;

            fileinfo += "专用部件号:" + fileversion.ProductPrivatePart.ToString() + "\r\n" ;

            textBox1.Text = fileinfo;

        }

运行结果如下图所示:

图10-20 获得Explorer.exe的信息

 

学习更多vb.net知识,请参看vb.net 教程 目录

学习更多C#知识,请参看C#教程 目录


http://www.kler.cn/a/525488.html

相关文章:

  • FAST-DDS and ROS2 RQT connect
  • 实战技巧:如何快速提高网站的收录比例?
  • 《使用通道 Transformer 进行多尺度特征融合,引导热图像超分辨率》学习笔记
  • 17 一个高并发的系统架构如何设计
  • 【以音频软件FFmpeg为例】通过Python脚本将软件路径添加到Windows系统环境变量中的实现与原理分析
  • 大屏 UI 设计风格的未来趋势
  • 【DeepSeek】LLM强化学习GRPO Trainer详解
  • Baklib在知识管理效率提升中的独特价值与其他产品的比较探析
  • RocketMQ 中如何实现消息的可靠传递?
  • C++,STL 简介:历史、组成、优势
  • 9.1 LangChain深度解析:大模型应用开发的“万能胶水”与核心架构设计
  • 数论问题77一一3x+1问题
  • 【deepseek实战】绿色好用,不断网
  • UE5制作视差图
  • 热更新杂乱记
  • Android车机DIY开发之学习篇(七)NDK交叉工具构建
  • 数据结构---哈希表
  • Linux - 常用的I/O 多路复用技术 select, poll, epoll
  • PyTorch 与 Python 版本对应关系
  • hive:基本数据类型,关于表和列语法
  • Unity敌人逻辑笔记
  • 推动知识共享的在线知识库实施与优化指南
  • java实现mysql数据库备份还原定时删除过期备份文件
  • JavaScript图像处理,JavaScript实现高斯滤波图像处理算法
  • http://noi.openjudge.cn/——4.2算法之数论——2419:Coins
  • 【面试】【前端】SSR与SPA的优缺点