/// <summary> /// ������ ȡ�ػ�Ա�Ķ���Ϣ�б�ӿ� /// </summary> /// <param name="uid"></param> /// <param name="curpage"></param> /// <param name="pagesize"></param> /// <param name="folder"></param> /// <param name="filter"></param> /// <param name="msglen"></param> /// <returns></returns> public string UcenterPmList(int uid, int curpage, int pagesize, PMFolder folder, PMFilter filter, int msglen) { UCRequestParms parms = new UCRequestParms(); parms["uid"] = uid.ToString(); parms["page"] = curpage.ToString(); parms["pagesize"] = pagesize.ToString(); parms["folder"] = folder.ToString(); parms["filter"] = filter.ToString(); parms["mesglen"] = msglen.ToString(); return DoRequest("pm", "ls", parms); }
SortedList<UInt32, PMFolder> ReadFolders(string folderFilename) { SortedList<UInt32, PMFolder> lstFolders = null; FileStream fs = new FileStream(folderFilename, FileMode.Open); if (fs.CanRead) { // Read Header PMHeader header = ReadPMHeader(fs); // Validate header signature as PaperMaster if (header.signature != 5457140) { ; } // Read fields List<PMField> lstFields = new List<PMField>(); for (short fieldNum = 0; fieldNum < header.numFields; ++fieldNum) { PMField field = ReadPMField(fs); lstFields.Add(field); } lstFolders = new SortedList<UInt32, PMFolder>(); // Read document entries while (fs.Position < fs.Length) // While not End of File { PMFolder pmFolder = new PMFolder(); BinaryReader br = new BinaryReader(fs); short recordlen = br.ReadInt16(); int offset = br.ReadInt32(); foreach (PMField field in lstFields) { switch (field.name) { case "PFC_CON_ID": pmFolder.conID = br.ReadUInt32(); break; case "HOST_PATH": pmFolder.hostPath = ReadString(br, field.len); break; case "PFC_PATH": pmFolder.pfcPath = ReadString(br, field.len); break; } } lstFolders.Add(pmFolder.conID, pmFolder); } fs.Close(); } return lstFolders; }