Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница:

 

  Вопрос: .NET CF: глючит FileStream! Добавлено: 02.10.07 11:51  

Автор вопроса:  Андрей Усачёв | ICQ: 70575706 
Вот. Поймал глюк в большой программе для мобильного устройства, потом уменьшил её до того, что получилось.

Программу компилировал на двух машинах и под двумя версиями .NET — результат один и тот же: из одного и того же места файла программа читает разные байты. В настольной версии .NET ошибка не проявлятся.

Если при создании FileStream убрать размер буфера (4096 в моём примере), то работает нормально. Но почему не работает с ним?!

Imports System.IO

Module Module1
    Sub Main()
        Const MAX_BUFFER As Integer = 2048
        Dim m_FileStream As FileStream = New FileStream("\Storage Card\file.txt", IO.FileMode.Open, IO.FileAccess.ReadWrite, IO.FileShare.None, 4096)
        Dim m_Buffer(MAX_BUFFER - 1) As Byte

        m_FileStream.ReadByte()

        m_FileStream.Seek(2129, IO.SeekOrigin.Begin)
        m_FileStream.Read(m_Buffer, 0, MAX_BUFFER)

        m_FileStream.Seek(3107, SeekOrigin.Begin)
        MsgBox(m_FileStream.Position & " " & Hex(m_FileStream.ReadByte()))

        m_FileStream.Seek(3107, SeekOrigin.Begin)
        MsgBox(m_FileStream.Position & " " & Hex(m_FileStream.ReadByte()))
    End Sub
End Module


P. S. Файл можно взять любой, например, такой:
http://usa.rota.lv/misc/file.txt

Ответить

  Ответы Всего ответов: 0  

Нет ответов

Страница:

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам