2011-08-31 92 views
0

我可以通過調用Shell32.Folder.GetDetailsOf來獲取文件的屬性/元數據,但似乎無法弄清楚如何修改這些屬性。我所指的屬性是「擴展細節」,例如圖像文件的相機模型和相機名稱。修改文件屬性/元數據

+0

不幸的是,由於EXIF數據位於圖像二進制文件的開頭,佔用了一定數量的空間,因此無法對圖像進行處理。 –

+0

'Folder.GetDetailsOf'是一種vba方法,而不是.NET。您標記了問題C#。請澄清。 – Oded

回答

1

如果你是確實使用C#,那麼你必須做一些互操作性/的PInvoke調用該方法,因爲這是殼牌方法...

要獲得+設置的EXIF信息可以使用Image類(雖然不是最優),對於標準屬性,您可以使用FileInfo類。

做EXIF相關的東西,包括源文件,可以找到很好的類here

+0

上次鏈接中的類肯定對處理非常有幫助,但目前看起來並不像它可以設置EXIF信息。另外,爲什麼'Image'類不適用於設置EXIF? – rafale

+0

使用'Image'類的AFAIK可能會導致重寫可能會導致的圖像文件,這取決於文件格式等質量可能出現的輕微損失......另一個要點是它將圖像加載到內存中,這可能是性能問題,如果你只想處理EXIF數據... – Yahia

+0

看起來像使用Image是我唯一的選擇。我似乎無法找到任何其他可以修改EXIF信息的庫或類。 – rafale