相关疑难解决方法(0)

C#:如何在"文件摘要"选项卡中读取信息?

可能重复:
读/写'扩展'文件属性(C#)

有谁知道如何使用C#在文件的摘要选项卡中读取信息?摘要选项卡:右键单击文件,然后"摘要"

谢谢

.net c# file summary

5
推荐指数
0
解决办法
1010
查看次数

Shell32.Folder.GetDetailsOf(..,..)有哪些可用选项?

我已经看到了GetDetailsOf()用于获取有关shell项目的详细信息的答案,但数字总是神奇的数字.

我查看了FolderItemGetDetailsOf的文档, 但一无所获.(后者中的列表并非适用于所有内容.它们不包括"描述","作者",也不包括回收站删除日期...)

是否有一些方法可以返回项目的可能选项?它在某处列出了吗?

.net c# com shell shell32

5
推荐指数
2
解决办法
6952
查看次数

将 360 元数据注入 .mp4 文件

我正在开发一个库,它将元数据注入 .mp4 文件,以允许视频正确显示为 360 度视频。输入文件是等距柱状投影格式的标准 .mp4 文件。我知道需要注入哪些元数据,但我只是不知道如何注入它。

我花了一些时间寻找可以做到这一点的库,但只能找到用于提取元数据而不是注入/嵌入/写入元数据的库。我发现的替代方案是使用Spatial Media作为命令行应用程序来更轻松地注入元数据。问题是我对 python 的了解为零,所以我倾向于使用库/nuget 包/ffmpeg 脚本。

是否存在一个好的 nuget 包/库可以做到这一点,或者我应该选择替代选项?

编辑1

我尝试将元数据粘贴到文件中的正确位置,以防万一它可以工作,但它没有。

编辑2

这是谷歌空间媒体工具注入的元数据,这就是我想要实现的目标:

<?xml version="1.0"?><rdf:SphericaVideo
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:GSpherical="http://ns.google.com/videos/1.0/spherical/"><GSpherical:Spherical>true</GSpherical:Spherical><GSpherical:Stitched>true</GSpherical:Stitched><GSpherical:StitchingSoftware>Spherical Metadata Tool</GSpherical:StitchingSoftware><GSpherical:ProjectionType>equirectangular</GSpherical:ProjectionType></rdf:SphericalVideo>`
Run Code Online (Sandbox Code Playgroud)

编辑3

我也尝试过使用 ffmpeg 来做到这一点,如下所示:ffmpeg -i input.mp4 -movflags use_metadata_tags -metadata Spherical=true -metadata Stitched=true -metadata ProjectionType=equirectangular -metadata StitchingSoftware=StreetviewJourney -codec copy output.mp4

我认为 ffmpeg 方法的问题在于它不包含rdf:SphericalVideo允许使用球形视频标签的部分。

编辑4

当我使用 ffmpeg 提取元数据时,它在日志中包含球形标记,但当我将其输出到 ffmetadata 文件时则不包含球形标记。这是我使用的命令:ffmpeg -i injected.mp4 -map_metadata -1 -f ffmetadata data.txt

这是日志的输出:

 fps, 60 tbr, 15360 tbn, 120 tbc (default)
    Metadata:
      handler_name    : …
Run Code Online (Sandbox Code Playgroud)

c# video mp4 metadata ffmpeg

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

阅读文件注释

某些文件在其属性中具有“摘要”选项卡,此选项卡包含诸如标题,作者,注释之类的信息。C#中有什么方法可以读取文件的注释。我只需要阅读jpg等图像文件中的注释。

c# extended-properties

4
推荐指数
2
解决办法
2222
查看次数

如何从文件属性中获取详细信息?

可能重复:
读/写'扩展'文件属性(C#)

有谁知道如何获取文件属性窗口的详细信息选项卡中包含的信息?我忽视的任何.NET库?

这是我正在谈论的窗口/信息:

替代文字

似乎有更好的方法来访问这些数据,而不是必须使用各种方法来提取各种文件类型的元数据,因为在此选项卡下可用的信息类别肯定存在一些重叠,即使对于不同的文件类型也是如此.但是我尽可能地搜索,但我没有遇到任何想要为任何(或许多)文件类型执行此操作的人 - 尽管有很多关于抓取特定文件类型的元数据的讨论.

任何你可能有的建议都是最受欢迎的:)

c# windows filesystems

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

如何设置文件版本注释

我在哪里可以设置文件版本注释..?

我们可以得到它

FileVersionInfo fv = 
System.Diagnostics.FileVersionInfo.GetVersionInfo(
                   Assembly.GetExecutingAssembly().Location);
var comment = fv.Comments;
Run Code Online (Sandbox Code Playgroud)

然后我该如何设置它以便我可以在某处显示相同的内容..

.net c#

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

如何读取扩展文件属性/文件元数据

因此,我按照教程使用 ASP.net 核心将文件“上传”到本地路径,这是代码:

public IActionResult About(IList<IFormFile> files)
    {

        foreach (var file in files)
        {
            var filename = ContentDispositionHeaderValue
                            .Parse(file.ContentDisposition)
                            .FileName
                            .Trim('"');
            filename = hostingEnv.WebRootPath + $@"\{filename}";

            using (FileStream fs = System.IO.File.Create(filename))
            {
                file.CopyTo(fs);
                fs.Flush();
            }
        }


        return View();
    }
Run Code Online (Sandbox Code Playgroud)

我想读取文件(文件元数据)的扩展属性,例如:

  • 姓名,
  • 作者,
  • 发布日期,
  • 等等

并使用这些数据对文件进行排序,有没有办法使用 Iformfile?

c# asp.net-mvc winapi

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

检索可执行信息

右键单击.exe文件时,可以看到各种详细信息,例如文件描述.

我正在寻找以编程方式检索数据的方法(最好是从C#).

(程序名称,程序描述,供应商名称,供应商网站等)

替代文字

.net c# shell

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

获取扩展文件信息详细信息

如何使用VB.net获取Windows文件的详细信息?

我所指的详细信息类型是当我右键单击文件(例如MS Word文档),然后单击“属性”并选择“详细信息”选项卡时发现的那些信息。

我知道可以通过FileInfo获得某些信息,但不能全部获得,例如“ Tags”。谢谢

vb.net windows filesystems

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

获取给定类型的编程语言

我引用了某些程序集的类型和类.

var type = typeof(SomeNamespace.SomeClass);
Run Code Online (Sandbox Code Playgroud)

有没有办法获得关于使用什么编程语言编写这个类的元数据?C#或VB或F#?

所以结果我想要这样的东西

var programmingLanguage = getLanguage(type); // C#
Run Code Online (Sandbox Code Playgroud)

UPD:

我可以分析用于此类的程序集或命名空间吗?也许这可以找到一种语言的线索?

UPD2:

到目前为止我可以使用它(这只是VB检测的一个例子)

var referenced = type.Assembly.GetReferencedAssemblies()
    .Where((r) => r.Name.Contains("VisualBasic"));
Run Code Online (Sandbox Code Playgroud)

VB添加了Microsoft.VisualBasic.F#还添加了它自己的程序集,C++声明了很多我可以检测到的"自我使用"类型.所以这是"一种方式".我知道这不容易出错.并且会有一些错误的案例.那有什么更好的吗?

.net c# reflection

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