ulinks.cpp

来自「我把unrar的代码整理成vc工程了」· C++ 代码 · 共 33 行

CPP
33
字号
#include "rar.hpp"int ExtractLink(ComprDataIO &DataIO,Archive &Arc,char *DestName,uint &LinkCRC,bool Create){#if defined(SAVE_LINKS) && defined(_UNIX)  char FileName[NM];  if (IsLink(Arc.NewLhd.FileAttr))  {    int DataSize=Min(Arc.NewLhd.PackSize,sizeof(FileName)-1);    DataIO.UnpRead((byte *)FileName,DataSize);    FileName[DataSize]=0;    if (Create)    {      CreatePath(DestName,NULL,true);      if (symlink(FileName,DestName)==-1)        if (errno==EEXIST)          Log(Arc.FileName,St(MSymLinkExists),DestName);        else        {          Log(Arc.FileName,St(MErrCreateLnk),DestName);          ErrHandler.SetErrorCode(WARNING);        }    }    int NameSize=Min(DataSize,strlen(FileName));    LinkCRC=CRC(0xffffffff,FileName,NameSize);    return(1);  }#endif  return(0);}

⌨️ 快捷键说明

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