如何在 UWP 视频存储文件中保存 System.Media.DateEncoded
How to save System.Media.DateEncoded in UWP video StorageFile
对于给定的 StorageFile
命名文件,我可以通过调用
检索一些属性
await file.Properties.RetrievePropertiesAsync(propertiesToRetrieve)
更改并妥善保存
await file.Properties.SaveProperties(propertiesToSave)
但是,每当我尝试将 System.Media.DateEncoded
属性 保存到视频文件(MP4 和 MOV)时,我在 try/catch
块中收到 The method or operation is not implemented
错误, 但我可以毫无问题地阅读它们。
有没有办法用现在的API保存这样的属性?
谢谢
添加信息
DateTimeOffset 由DatePicker 和Timepicker 组合而来,注入到类似下面的函数中。为了简化代码,我在下面使用 DateTimeOffset 的硬编码值。仍然会抛出异常并显示相同的消息。我保证文件不为空(未显示)。
public async Task<bool> SaveDateEncoded(StorageFile file)
{
try
{
var dateTimeOffset = new DateTimeOffset(2000, 09, 03, 3, 50, 13, new TimeSpan(2, 0, 0));
var props = new List<KeyValuePair<string, object>>()
{
new KeyValuePair<string, object>("System.Media.DateEncoded",dateTimeOffset),
};
await file.Properties.SavePropertiesAsync(props);
return true;
}
catch (Exception ex)
{
return false;
}
}
I am getting a The method or operation is not implemented error
此问题已在版本 1903、1909 中修复。
请看:
2020 年 2 月 27 日—KB4535996(OS 内部版本 18362.693 和 18363.693)
https://support.microsoft.com/en-us/help/4535996/windows-10-update-kb4535996
Addresses an issue with editing the properties of .mov files.
所以你可以在你的1903/1909机器上安装KB4535996,问题就解决了。
对于给定的 StorageFile
命名文件,我可以通过调用
await file.Properties.RetrievePropertiesAsync(propertiesToRetrieve)
更改并妥善保存
await file.Properties.SaveProperties(propertiesToSave)
但是,每当我尝试将 System.Media.DateEncoded
属性 保存到视频文件(MP4 和 MOV)时,我在 try/catch
块中收到 The method or operation is not implemented
错误, 但我可以毫无问题地阅读它们。
有没有办法用现在的API保存这样的属性?
谢谢
添加信息
DateTimeOffset 由DatePicker 和Timepicker 组合而来,注入到类似下面的函数中。为了简化代码,我在下面使用 DateTimeOffset 的硬编码值。仍然会抛出异常并显示相同的消息。我保证文件不为空(未显示)。
public async Task<bool> SaveDateEncoded(StorageFile file)
{
try
{
var dateTimeOffset = new DateTimeOffset(2000, 09, 03, 3, 50, 13, new TimeSpan(2, 0, 0));
var props = new List<KeyValuePair<string, object>>()
{
new KeyValuePair<string, object>("System.Media.DateEncoded",dateTimeOffset),
};
await file.Properties.SavePropertiesAsync(props);
return true;
}
catch (Exception ex)
{
return false;
}
}
I am getting a The method or operation is not implemented error
此问题已在版本 1903、1909 中修复。
请看:
2020 年 2 月 27 日—KB4535996(OS 内部版本 18362.693 和 18363.693)
https://support.microsoft.com/en-us/help/4535996/windows-10-update-kb4535996
Addresses an issue with editing the properties of .mov files.
所以你可以在你的1903/1909机器上安装KB4535996,问题就解决了。