示例#1
0
        public void Read(UruStream s)
        {
            while (true) {
                AuthFileEntry entry = new AuthFileEntry();
                entry.fName = s.ReadUnicodeString();
                if (entry.fName == String.Empty) break;
                entry.fSize = (long)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF);
                s.ReadUShort(); //NULL

                fFiles.Add(entry);
            }
        }
示例#2
0
 public void Read(UruStream s)
 {
     fType = (EConnType)s.ReadByte();
     fSockHeaderSize = s.ReadUShort();
     fBuildID = s.ReadUInt();
     fBuildType = (NetCliBuildType)s.ReadUInt();
     fBranchID = s.ReadUInt();
     fProductID = new Guid(s.ReadBytes(16));
 }
示例#3
0
文件: Manifest.cs 项目: Hoikas/mudpit
        public void Read(UruStream s)
        {
            while (true) {
                FileManifestEntry me = new FileManifestEntry();
                me.fFileName = s.ReadUnicodeString();
                if (me.fFileName == String.Empty) break; //The end of the manifest is an empty string

                me.fDownloadName = s.ReadUnicodeString();
                me.fHash = s.ReadUnicodeString();
                me.fCompressedHash = s.ReadUnicodeString();

                me.fFileSize = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF);
                s.ReadUShort(); //NULL

                me.fCompressedSize = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF);
                s.ReadUShort(); //NULL

                me.fFlags = (uint)(s.ReadUShort() << 16 | s.ReadUShort() & 0xFFFF);
                s.ReadUShort(); //NULL

                fEntries.Add(me);
            }
        }