Создайте 2 FileStream в одном файле в одном процессе

Я пытаюсь создать временный файл, который будет автоматически удален.

stream = new FileStream(
           tmpFilePath, 
           FileMode.OpenOrCreate, 
           FileAccess.ReadWrite, 
           FileShare.ReadWrite, 
           4096, 
           FileOptions.DeleteOnClose|FileOptions.RandomAccess
           );

Этот файл будет использоваться сторонним API, который также создаст FileStream:

stream = new FileStream(
          tmpFilePath, 
          FileMode.Open, 
          FileAccess.Read, 
          FileShare.Read);

Я думаю, что перепробовал все возможные комбинации флагов, но всегда получаю сообщение «Процесс не может получить доступ к файлу 'XXX', потому что он используется другим процессом ...»

Я что-то делаю не так? Есть ли способ обойтись?

6
задан HaveNoDisplayName 9 December 2015 в 04:21
поделиться