⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 updateproduce.cpp

📁 由7-zip提供的压缩、解压缩程序
💻 CPP
字号:
// UpdateProduce.cpp#include "StdAfx.h"#include "UpdateProduce.h"using namespace NUpdateArchive;static const char *kUpdateActionSetCollision =    "Internal collision in update action set";void UpdateProduce(    const CObjectVector<CDirItem> &dirItems,     const CObjectVector<CArchiveItem> &archiveItems,     const CObjectVector<CUpdatePair> &updatePairs,    const NUpdateArchive::CActionSet &actionSet,    CObjectVector<CUpdatePair2> &operationChain){  for(int i = 0; i < updatePairs.Size(); i++)  {    // CUpdateArchiveRange aRange;    const CUpdatePair &pair = updatePairs[i];    CUpdatePair2 pair2;    pair2.IsAnti = false;    pair2.ArchiveItemIndex = pair.ArchiveItemIndex;    pair2.DirItemIndex = pair.DirItemIndex;    pair2.ExistInArchive = (pair.State != NPairState::kOnlyOnDisk);    pair2.ExistOnDisk = (pair.State != NPairState::kOnlyInArchive);    switch(actionSet.StateActions[pair.State])    {      case NPairAction::kIgnore:        /*        if (pair.State != NPairState::kOnlyOnDisk)          IgnoreArchiveItem(m_ArchiveItems[pair.ArchiveItemIndex]);        // cout << "deleting";        */        break;      case NPairAction::kCopy:        {          if (pair.State == NPairState::kOnlyOnDisk)            throw kUpdateActionSetCollision;          pair2.NewData = pair2.NewProperties = false;          operationChain.Add(pair2);          break;        }      case NPairAction::kCompress:        {          if (pair.State == NPairState::kOnlyInArchive ||             pair.State == NPairState::kNotMasked)            throw kUpdateActionSetCollision;          pair2.NewData = pair2.NewProperties = true;          operationChain.Add(pair2);          break;        }      case NPairAction::kCompressAsAnti:        {          pair2.IsAnti = true;          pair2.NewData = pair2.NewProperties = true;          operationChain.Add(pair2);          break;        }    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -