急!用C#如何修改文件的扩展信息,比如文件的作者信息和标题等内容,望高手赐教!!!
最近做个小项目,需要修改文件的扩展信息,比如作者信息和标题等,不知道如何实现,还望高手赐教!!!先谢谢了!
------解决方案--------------------是自定义的文件类型还是DOC文档?
------解决方案--------------------不要写了,下载个工具,类似PE.Explorer。
版本信息一般在文件的内嵌资源中,要读出来再写进去,你需要了解PE格式。
------解决方案--------------------doc文档的话,倒是可以练练手。
基本步骤大概是:
添加COM引用,Microsoft Word object library
添加命名空间 using Word = Microsoft.Office.Interop.Word
打开文件,
写版本信息等,
保存文件。
------解决方案--------------------http://dev.csdn.net/author/Knight94/8cf25c62ad9e42d7b201b4b4324bc7c0.html
看看吧
------解决方案--------------------学習
------解决方案--------------------这是微软的一个页面:
如何:从文档属性中读取或向文档属性写入http://msdn.microsoft.com/zh-cn/library/4e0tda25(VS.80).aspx
------解决方案--------------------你看看File,FileInfo,FlagsAttribute这几个类,在File类中由File.SetAttributes()方法,不知道能不能帮到你。
------解决方案--------------------在项目的solution中proerties里有AssemblyInfo.cs文件,编辑这个文件然后重新编译就可以了,
例如:[assembly: AssemblyFileVersion("1.0.0.5")]是文件版本号
[assembly: AssemblyCompany("公司")]是公司名称
------解决方案--------------------proerties里有AssemblyInfo.cs文件
C# code
// 有关程序集的常规信息通过下列属性集
// 控制。更改这些属性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("程序标题")]
[assembly: AssemblyDescription("程序描述")]
[assembly: AssemblyConfiguration("配置文件")]
[assembly: AssemblyCompany("公司")]
[assembly: AssemblyProduct("产品")]
[assembly: AssemblyCopyright("版权所有 (C) 版权所属 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
------解决方案--------------------
你的目的是:需要修改文件的扩展信息,比如作者信息和标题
那你可以通过设计下数据库,设计下接口,然后调用下它的类读取数据库就可以修改数据了...(自定义类的)