标签: getfileversion

使用C#,如何知道文件夹是否位于网络上

使用C#,我希望我的应用程序返回文件夹(具有已知路径)是位于网络中还是位于我的计算机中.

我怎样才能做到这一点?

c# network-programming getfiles getfileversion

7
推荐指数
2
解决办法
3238
查看次数

控制台应用程序中的FileVersionInfo.GetVersionInfo()不正确

我使用FileVersionInfo.GetVersionInfo()得到一些严重的怪异,并希望有人可以提供帮助.

问题的基础是我正在遍历每个文件夹中调用GetVersionInfo()的所有文件.大约有300个文件.这适用于除2个文件之外的所有文件.对于这些DLL,我从GetVersionInfo()得到了完全不正确的信息.

为了消除所有其他变量,我将此调用提取到一个简单的测试应用程序中,它仍然遇到了同样的问题.但是,如果我将测试应用程序构建为Windows应用程序(最初是控制台应用程序),那么数据就会恢复正常.

只是为了澄清一下,当作为控制台应用程序运行时返回的不正确数据不仅仅是空信息,就像文件不包含版本数据一样.它包含合理的数据,但只包含错误的数据.就好像是从不同的文件中读取它一样.我找了一个包含匹配版本数据的文件,但找不到.

如果构建为控制台应用程序而不是Windows应用程序,为什么这个简单的调用功能会不同?

如果有人可以帮助我,我将非常感激.

安德,安迪

- 已添加代码

using System;
using System.Diagnostics;

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            string file = "C:\\ProblemFile.dll";
            FileVersionInfo version = FileVersionInfo.GetVersionInfo(file);
            string fileName = version.FileName;
            string fileVersion = version.FileVersion;

            Console.WriteLine(string.Format("{0} : {1}", fileName, fileVersion));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# system.diagnostics console-application getfileversion

4
推荐指数
1
解决办法
5629
查看次数

使用jscript检测exe的版本和公司名称

我知道如何使用jscript检索exe的版本,但我找不到任何方法来检索"公司","内部名称"或"产品名称"等其他信息.

function version_of( file_name ) 
{
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   var f;
   try {
      f = fso.GetFile( file_name )
   } catch( e ) {
      throw new Error( e.number, "Error retrieving version of file ``" + file_name + "'': " + e.description );
   }
   var v = fso.GetFileVersion( f );
   if ( !v ) {
      throw new Error( 1, "File ``" + file_name + "'' has not got a version" );
   }
   return v;
}

WScript.Echo( version_of( "c:\\windows\\system32\\winver.exe" ) ); …
Run Code Online (Sandbox Code Playgroud)

javascript scripting getfileversion

3
推荐指数
1
解决办法
5126
查看次数

通过 cmd/bat 从文件中获取产品版本

我有一个包含版本资源的文件,其中填充了文件版本/产品版本字段。我需要通过 BAT 文件检索产品版本。例如,bat 文件的输出中有 ProductVersion 1.0.1 的文件,我不想有字符串“101”或“1.0.1”

cmd getfileversion

3
推荐指数
1
解决办法
8162
查看次数

GetVersionInfo和powershell的参数异常

我试图使用powershell来获取文件的文件版本.如果我右键单击该文件并查看该版本,则会显示一个值.以下是我尝试这样做的方法:

$path = "MSDE2000A";
$info = [System.Diagnostics.FileVersionInfo]::GetVersionInfo($path);
Run Code Online (Sandbox Code Playgroud)

这是它抛出的异常信息:

Exception calling "GetVersionInfo" with "1" argument(s): "MSDE2000A.exe"
At line:1 char:58
+ $f = [system.diagnostics.fileversioninfo]::getversioninfo <<<< ("MSDE2000A.exe")
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
Run Code Online (Sandbox Code Playgroud)

我检查的每个文件都有相同的结果.但是,如果我的路径是c:\ windows \notepad.exe(如示例中所示),它将按预期工作.这是怎么回事?

powershell getfileversion

1
推荐指数
1
解决办法
2773
查看次数

在Android上运行Delphi时,如何获取文件的文件版本信息?

我正在使用Delphi XE7,我想将有关我的应用程序的一些信息记录到日志文件中,因此我需要将MSWindows中的GetFileVersionInfo移植到Android中.如果可能的话,我想要一个适用于任何文件的通用例程.我看到有一个如何在OSX中获取文件版本信息的Delphi示例,但我找不到任何指向相关Android单元的内容.有人可以帮忙吗?

delphi android getfileversion

1
推荐指数
1
解决办法
894
查看次数