Example #1
0
        public unsafe int ReadBlocks(int BytesToRead)
        {
            int   num  = 0;
            int   num2 = 0;
            byte *ptr  = (byte *)this.pBuffer;

            while (true)
            {
                int numberOfBytesToRead = Math.Min(65536, BytesToRead - num2);
                if (!WinFileIO.ReadFile(this.pHandle, (void *)ptr, numberOfBytesToRead, &num, 0))
                {
                    break;
                }
                if (num == 0)
                {
                    return(num2);
                }
                num2 += num;
                ptr  += num;
                if (num2 >= BytesToRead)
                {
                    return(num2);
                }
            }
            Win32Exception       ex  = new Win32Exception();
            ApplicationException ex2 = new ApplicationException("WinFileIO:ReadBytes - Error occurred reading a file. - " + ex.Message);

            throw ex2;
        }
Example #2
0
        public unsafe int Read(int BytesToRead)
        {
            int result = 0;

            if (!WinFileIO.ReadFile(this.pHandle, this.pBuffer, BytesToRead, &result, 0))
            {
                Win32Exception       ex  = new Win32Exception();
                ApplicationException ex2 = new ApplicationException("WinFileIO:Read - Error occurred reading a file. - " + ex.Message);
                throw ex2;
            }
            return(result);
        }
Example #3
0
        public unsafe int ReadUntilEOF()
        {
            int   num  = 0;
            int   num2 = 0;
            byte *ptr  = (byte *)this.pBuffer;

            while (WinFileIO.ReadFile(this.pHandle, (void *)ptr, 65536, &num, 0))
            {
                if (num == 0)
                {
                    return(num2);
                }
                num2 += num;
                ptr  += num;
            }
            Win32Exception       ex  = new Win32Exception();
            ApplicationException ex2 = new ApplicationException("WinFileIO:ReadUntilEOF - Error occurred reading a file. - " + ex.Message);

            throw ex2;
        }