public static FileStream OpenReadOnly(string fileName, long position=0)
{
var s = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
if (position > 0)
{
if (position < s.Length)
{
s.Position = position;
}
else
{
throw new OutOfBoundsException();
}
}
return s;
}