|
提示いただいたURLを基に、MTP転送を実装してみました。 windows formからwpfに置き換えました。
内部ストレージのファイル名の取得や、アップデートまではできたのですが、 アップデートする際、すでに内部ストレージに同名のファイル名がある場合、 例外が発生してしまいます。
すでにファイルがある場合、強制的に上書きしてくれるオプション等が あるのでしょうか。
エラーが発生した箇所を下記に載せます。 お手数ですが、よろしくお願いします。
System.Runtime.InteropServices.ComTypes.IStream targetStream = (System.Runtime.InteropServices.ComTypes.IStream)tempStream; try { using (var sourceStream = new FileStream(fileName, FileMode.Open, FileAccess.Read)) { var buffer = new byte[optimalTransferSizeBytes]; int bytesRead; do { bytesRead = sourceStream.Read(buffer, 0, (int)optimalTransferSizeBytes);
if (bytesRead <= 0) { break; }
IntPtr pcbWritten = IntPtr.Zero; targetStream.Write( ★ここでエラーが発生します。 buffer, (int)bytesRead, pcbWritten); } while (true); } targetStream.Commit(0); }
|