【问题标题】:Getting file version info in the Compact Framework在 Compact Framework 中获取文件版本信息
【发布时间】:2011-04-18 07:08:54
【问题描述】:

我有一些代码需要能够找到程序集的版本号,给定一个说明它所在位置的字符串。

我无法让它工作:

Assembly assembly = Assembly.LoadFrom("\\Program Files\\Microsoft SQL Server Compact Edition\\v3.5\\sqlcecompact35.dll");

引发 System.IO.IOException:找不到文件或程序集名称“\Program Files\Microsoft SQL Server Compact Edition\v3.5\sqlcecompact35.dll”或其依赖项之一。

但文件确实存在:

FileInfo fileInfo = new FileInfo("\\Program Files\\Microsoft SQL Server Compact Edition\\v3.5\\sqlcecompact35.dll"); 

创建一个对象,其中 fileInfo.Exists == true。

我应该传入不同的文件名/路径来加载 SQL CE 程序集吗?谢谢。

【问题讨论】:

    标签: .net windows-mobile compact-framework assemblies sql-server-ce


    【解决方案1】:

    sqlcecompact35.dll 不是托管程序集,因此无法通过反射加载。该 DLL 以及其他文件,如 sqlceqp35.dll、sqlceca35.dll(在分发中查找所有文件)是数据引擎的核心部分。您可以通过这种方式加载的唯一托管程序集是 System.Data.SqlServerCe.dll。

    编辑

    在 Compact Framework 中获取原生文件的文件版本信息并不容易。我已建立并blogged a solution 为您检索此信息。

    【讨论】:

    • 哦-谢谢。我可以通过其他方式以编程方式从文件中获取版本号,而无需查看注册表吗?
    猜你喜欢
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多