私の C# アプリケーションでは、mp3 ファイルのタグを作成しています。このために、TagLib ライブラリ/拡張機能を使用します。
タグの 1 つはアートワークです。次を使用して、アートワークを mp3 のタグに正常に追加できます。
TagLib.File f = TagLib.File.Create(path);
IPicture[] pictures = new IPicture[1];
pictures[0] = new Picture(artwork);
f.Tag.Pictures = pictures;
pathは mp3 へartworkのフル パス、 はアートワークへのフル パスです。
Pictures タグに割り当てた後、次を使用します。
f.Save();
f.Dispose();
ここで、アートワーク ファイルをコンピューター上の別の場所に移動することにも関心があります。
このために私は使用します:
File.Move(pathArtOrig, pathArtNew);
pathArtOrigアートワーク ファイルの現在のフル パスであり、pathArtNew移動先のフル パスです。
問題は、次のエラーが発生することです。
IOException が処理されませんでした。ファイルが別のプロセスによって使用されているため、プロセスはファイルにアクセスできません。
使用されているアートワーク ファイルのリソースを「解放」する方法がわかりません (.jpg ファイルの可能性があります)。ご覧のとおり、上記の Dispose() を試しましたが、うまくいきません。
どんな助けでも大歓迎です。