亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pathname.c

?? zip壓縮
?? C
?? 第 1 頁 / 共 2 頁
字號:
    return strcpy(FileName, FilePath); /* FilePath has no Folders */    }return strcpy(FileName, dirPtr);}/***  return fullpathname from folder/dir-id***/char *GetFullPathFromID(char *CompletePath, short vRefNum, long dirID,                        ConstStr255Param name, OSErr *err){FSSpec      spec;    *err = FSMakeFSSpecCompat(vRefNum, dirID, name, &spec);    printerr("FSMakeFSSpecCompat:", (*err != -43) && (*err != 0), *err,             __LINE__, __FILE__, "");    if ( (*err == noErr) || (*err == fnfErr) )        {        return GetFullPathFromSpec(CompletePath, &spec, err);        }return NULL;}/***  convert real-filename to archive-filename***/char *Real2RfDfFilen(char *RfDfFilen, const char *RealPath,                    short CurrentFork, short MacZipMode, Boolean DataForkOnly){AssertStr(RealPath,"Real2RfDfFilen")AssertStr(RfDfFilen,"Real2RfDfFilen")if (DataForkOnly) /* make no changes */    {    return sstrcpy(RfDfFilen, RealPath);    }switch (MacZipMode)    {    case JohnnyLee_EF:        {        sstrcpy(RfDfFilen, RealPath);        if (CurrentFork == DataFork)            /* data-fork  */            return sstrcat(RfDfFilen, "d");        if (CurrentFork == ResourceFork)        /* resource-fork */            return sstrcat(RfDfFilen, "r");        break;        }    case NewZipMode_EF:        {        switch (CurrentFork)            {            case DataFork:                {                sstrcpy(RfDfFilen, RealPath);                return RfDfFilen;  /* data-fork  */                break;                }            case ResourceFork:                {                sstrcpy(RfDfFilen, ResourceMark);                sstrcat(RfDfFilen, RealPath);  /* resource-fork */                return RfDfFilen;                break;                }            default:                {                printerr("Real2RfDfFilen:", -1, -1,                         __LINE__, __FILE__, RealPath);                return NULL;  /* function should never reach this point */                }            }        break;        }    default:        {        printerr("Real2RfDfFilen:", -1, -1, __LINE__, __FILE__, RealPath);        return NULL;  /* function should never reach this point */        }    }printerr("Real2RfDfFilen:", -1, -1, __LINE__, __FILE__, RealPath);return NULL;  /* function should never come reach this point */}/***  convert archive-filename into a real filename***/char *RfDfFilen2Real(char *RealFn, const char *RfDfFilen, short MacZipMode,                     Boolean DataForkOnly, short *CurrentFork){short   length;int     result;AssertStr(RfDfFilen,"RfDfFilen2Real")if (DataForkOnly ||    (MacZipMode == UnKnown_EF) ||    (MacZipMode < JohnnyLee_EF))    {    *CurrentFork = DataFork;    return sstrcpy(RealFn,RfDfFilen);    }result = strncmp(RfDfFilen, ResourceMark, sizeof(ResourceMark)-2);if (result == 0)    {    MacZipMode = NewZipMode_EF;    }switch (MacZipMode)    {    case JohnnyLee_EF:        {        sstrcpy(RealFn, RfDfFilen);        length = strlen(RealFn);       /* determine Fork type */        if (RealFn[length-1] == 'd') *CurrentFork = DataFork;        else *CurrentFork = ResourceFork;        RealFn[length-1] = '\0';       /* simply cut one char  */        return RealFn;        break;        }    case NewZipMode_EF:        {                                   /* determine Fork type */        result = strncmp(RfDfFilen, ResourceMark, sizeof(ResourceMark)-2);        if (result != 0)            {            *CurrentFork = DataFork;            sstrcpy(RealFn, RfDfFilen);            return RealFn;  /* data-fork  */            }        else            {            *CurrentFork = ResourceFork;            if (strlen(RfDfFilen) > (sizeof(ResourceMark) - 1))                {                sstrcpy(RealFn, &RfDfFilen[sizeof(ResourceMark)-1]);                }            else RealFn[0] = '\0';            return RealFn;  /* resource-fork */            }        break;        }    default:        {        *CurrentFork = NoFork;        printerr("RfDfFilen2Real():", -1, MacZipMode,                 __LINE__, __FILE__, RfDfFilen);        return NULL;  /* function should never reach this point */        }    }printerr("RfDfFilen2Real():", -1, MacZipMode, __LINE__, __FILE__, RfDfFilen);return NULL;  /* function should never reach this point */}/***  return the applications name (argv[0])***/char *GetAppName(void){ProcessSerialNumber psn;static Str255       AppName;ProcessInfoRec      pinfo;OSErr               err;GetCurrentProcess(&psn);pinfo.processName = AppName;pinfo.processInfoLength = sizeof(pinfo);pinfo.processAppSpec = NULL;err = GetProcessInformation(&psn,&pinfo);AppName[AppName[0]+1] = 0x00;return (char *)&AppName[1];}/***  return fullpathname from FSSpec***/char *GetFullPathFromSpec(char *FullPath, FSSpec *Spec, OSErr *err){Handle hFullPath;short len;Assert_it(Spec,"GetFullPathFromSpec","")*err = FSpGetFullPath(Spec, &len, &hFullPath);printerr("FSpGetFullPath:", (*err != -43) && (*err != 0), *err,         __LINE__, __FILE__, "");memmove(FullPath, (Handle) *hFullPath, len);FullPath[len] = '\0';  /* make c-string */DisposeHandle((Handle)hFullPath);   /* we don't need it any more */printerr("Warning path length exceeds limit: ", len >= NAME_MAX, len,         __LINE__, __FILE__, " chars ");return FullPath;}/** This function expands a given partial path to a complete path.* Path expansions are relative to the running app.* This function follows the notation:*   1. relative path:*       a: ":subfolder:filename"    -> ":current folder:subfolder:filename"*       b: "::folder2:filename"     -> folder2 is beside the current*                                      folder on the same level*       c: "filename"               -> in current folder** An absolute path will be returned.The following characteristics of Macintosh pathnames should be noted:       A full pathname never begins with a colon, but must contain at       least one colon.       A partial pathname always begins with a colon separator except in       the case where the file partial pathname is a simple file or       directory name.       Single trailing separator colons in full or partial pathnames are       ignored except in the case of full pathnames to volumes.       In full pathnames to volumes, the trailing separator colon is required.       Consecutive separator colons can be used to ascend a level from a       directory to its parent directory. Two consecutive separator colons       will ascend one level, three consecutive separator colons will ascend       two levels, and so on. Ascending can only occur from a directory;       not a file.*/char *GetCompletePath(char *CompletePath, const char *name, FSSpec *Spec,                      OSErr *err){Boolean hasDirName = false;char currentdir[NAME_MAX];char *tmpPtr;unsigned short pathlen;AssertStr(name,"GetCompletePath")Assert_it(Spec,"GetCompletePath","")Assert_it((CompletePath != name),"GetCompletePath","")for (tmpPtr = name; *tmpPtr; tmpPtr++)    if (*tmpPtr == ':') hasDirName = true;if (name[0] != ':')   /* case c: path including volume name or only filename */    {    if (hasDirName)        {   /* okey, starts with volume name, so it must be a complete path */        sstrcpy(CompletePath, name);        }    else        {   /* only filename: add cwd and return */        getcwd(currentdir, NAME_MAX);        sstrcat(currentdir, name);        sstrcpy(CompletePath, currentdir);        }    }else if (name[1] == ':')    /* it's case b: "::folder2:filename"  */    {    printerr("GetCompletePath ", -1, *err, __LINE__, __FILE__, "not implemented");            /* it's not yet implemented; do we really need this case ?*/    return NULL;    }else                        /* it's case a: ":subfolder:filename" */    {    getcwd(CompletePath, NAME_MAX);     /* we don't need a second colon */    CompletePath[strlen(CompletePath)-1] = '\0';    sstrcat(CompletePath, name);    }pathlen = strlen(CompletePath);*err = FSpLocationFromFullPath(pathlen, CompletePath, Spec);return CompletePath;}char *MakeFilenameShorter(const char *LongFilename){static char filename[35];  /* contents should be never longer than 32 chars */static unsigned char Num = 0; /* change the number for every call */                              /* this var will rollover without a problem */char tempLongFilename[1024], charnum[5];char *last_dotpos         = tempLongFilename;unsigned long full_length = strlen(LongFilename);unsigned long ext_length  = 0;unsigned long num_to_cut  = 0;long firstpart_length;char *tmpPtr;short MaxLength = 31;if (full_length <= MaxLength) /* filename is not long */    {    return strcpy(filename,LongFilename);    }Num++;strcpy(tempLongFilename,LongFilename);/* Look for the last extension pos */for (tmpPtr = tempLongFilename; *tmpPtr; tmpPtr++)    if (*tmpPtr == '.') last_dotpos = tmpPtr;ext_length = strlen(last_dotpos);firstpart_length = last_dotpos - tempLongFilename;if (ext_length > 6)  /* up to 5 chars are treated as a */    {                /* normal extension like ".html" or ".class"  */    firstpart_length = 0;    }num_to_cut = full_length - MaxLength;/* number the files to make the names unique */sprintf(charnum,"~%x", Num);num_to_cut += strlen(charnum);if (firstpart_length == 0)    {    firstpart_length = full_length;    tempLongFilename[firstpart_length - num_to_cut] = 0;    sprintf(filename,"%s%s", tempLongFilename, charnum);    }else    {    tempLongFilename[firstpart_length - num_to_cut] = 0;    sprintf(filename,"%s%s%s", tempLongFilename, charnum, last_dotpos);    }return filename;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产乱码字幕精品高清av| 国产老女人精品毛片久久| 日本在线不卡视频| 国产一区二区影院| 在线精品观看国产| 日韩免费高清电影| 亚洲日穴在线视频| 狠狠狠色丁香婷婷综合久久五月| 91麻豆精东视频| 精品噜噜噜噜久久久久久久久试看 | 国产在线精品免费av| 日本伦理一区二区| 中文字幕乱码日本亚洲一区二区| 亚洲大片免费看| 91麻豆国产在线观看| 久久精品亚洲乱码伦伦中文| 天天影视网天天综合色在线播放 | 久久99国产乱子伦精品免费| 一本色道久久综合亚洲aⅴ蜜桃| 精品久久久久久亚洲综合网| 调教+趴+乳夹+国产+精品| k8久久久一区二区三区 | 成人黄色电影在线| 精品国产a毛片| 日日摸夜夜添夜夜添精品视频| 99久久99久久综合| 国产精品色眯眯| 国产大陆亚洲精品国产| 日韩你懂的在线播放| 日韩高清不卡一区二区三区| 在线免费不卡电影| 亚洲美女视频在线观看| 精品亚洲成a人| 日韩欧美高清在线| 日产精品久久久久久久性色| 91浏览器在线视频| 伊人色综合久久天天人手人婷| 成人美女在线视频| 国产精品久久久久久久午夜片| 国产精品一品二品| 国产欧美日本一区二区三区| 久久精品国产一区二区三区免费看| 欧美精品欧美精品系列| 天天av天天翘天天综合网色鬼国产| 欧美日韩精品欧美日韩精品一| 亚洲v精品v日韩v欧美v专区| 欧美久久一二区| 麻豆成人91精品二区三区| 欧美伦理电影网| 日韩国产欧美三级| 日韩久久久久久| 国产一区二区三区四区五区入口 | 日韩一级欧美一级| 久久97超碰国产精品超碰| 久久综合久久99| 93久久精品日日躁夜夜躁欧美| 亚洲欧美视频在线观看视频| 欧美亚一区二区| 麻豆精品久久久| 国产欧美一区二区精品久导航| 不卡在线观看av| 亚洲成av人片| 精品成人一区二区三区四区| 成人app在线| 午夜精品视频一区| 欧美变态口味重另类| jlzzjlzz欧美大全| 日产欧产美韩系列久久99| 久久嫩草精品久久久久| 色偷偷成人一区二区三区91| 日韩专区一卡二卡| 欧美激情一区二区三区蜜桃视频 | 午夜精品久久久久久不卡8050| 51久久夜色精品国产麻豆| 国产精品系列在线观看| 一区二区三区日韩精品| 欧美成人一区二区| 99国产一区二区三精品乱码| 亚洲成在人线在线播放| 精品免费国产一区二区三区四区| 99re热这里只有精品视频| 免费在线观看一区二区三区| 国产精品久久久久久久久免费丝袜| 欧美色图免费看| 成人在线视频一区二区| 日韩影院精彩在线| 亚洲视频一区二区在线观看| 日韩精品一区二区三区四区| 色天使色偷偷av一区二区| 国模冰冰炮一区二区| 亚洲成av人片| 亚洲欧美福利一区二区| 91精品国产品国语在线不卡 | 国产a级毛片一区| 亚洲一区二区视频| 综合欧美亚洲日本| 2021中文字幕一区亚洲| 在线视频你懂得一区二区三区| 秋霞成人午夜伦在线观看| 中文字幕欧美一| 国产婷婷色一区二区三区四区| 99国产精品视频免费观看| 黄色资源网久久资源365| 日韩av电影免费观看高清完整版| 成人免费一区二区三区在线观看| 久久一夜天堂av一区二区三区| 欧美一区二区三区免费大片 | 国产精品无遮挡| 26uuu精品一区二区三区四区在线| 成人午夜电影久久影院| 天天色综合天天| 三级成人在线视频| 日韩av中文在线观看| 成人欧美一区二区三区小说| 国产欧美一区二区精品久导航 | 在线免费观看日本一区| 色婷婷av一区二区三区软件| 91在线观看高清| 国产精品18久久久久久久久| 国产制服丝袜一区| 亚洲不卡在线观看| 蜜臀久久99精品久久久久久9| 日韩在线a电影| 国产做a爰片久久毛片| 国产一区二区三区美女| 国产馆精品极品| 丁香五精品蜜臀久久久久99网站 | 91论坛在线播放| 亚洲欧美综合色| 欧美男人的天堂一二区| www.日韩大片| 狠狠色狠狠色合久久伊人| 亚洲麻豆国产自偷在线| 久久午夜老司机| 日韩三级免费观看| 91麻豆精品久久久久蜜臀| 日本韩国欧美国产| 波多野结衣欧美| 99精品久久免费看蜜臀剧情介绍| 91高清在线观看| 在线日韩av片| 9191国产精品| 日韩欧美的一区| 日韩欧美另类在线| 久久影院视频免费| 国产香蕉久久精品综合网| 国产女主播在线一区二区| 国产精品久久看| 青青草原综合久久大伊人精品优势| 日韩精品福利网| 韩国午夜理伦三级不卡影院| 国产精品一区二区91| 99久久国产综合精品麻豆| 欧美一区二区久久| 精品国产青草久久久久福利| 国产亚洲1区2区3区| **网站欧美大片在线观看| 婷婷综合另类小说色区| 免费看精品久久片| 国产宾馆实践打屁股91| 99re热这里只有精品免费视频| 色综合色综合色综合色综合色综合 | 国产suv一区二区三区88区| 色噜噜久久综合| 日韩一区二区三区视频在线观看| 久久理论电影网| 亚洲欧洲精品天堂一级 | 欧美情侣在线播放| 欧美激情在线观看视频免费| 亚洲一区自拍偷拍| 麻豆精品一区二区| 成人av电影在线播放| 亚洲精品一区二区三区四区高清 | 亚洲国产精品传媒在线观看| 亚洲午夜久久久久久久久电影院 | 亚洲成av人影院在线观看网| 国产一区二区三区蝌蚪| 91国偷自产一区二区三区观看| 4438亚洲最大| 一区二区三区在线观看网站| 九九精品一区二区| 欧美亚洲愉拍一区二区| 国产欧美一区视频| 久久超碰97人人做人人爱| 色婷婷综合五月| 精品va天堂亚洲国产| 一区二区不卡在线播放 | 久久国产日韩欧美精品| av一区二区不卡| 精品欧美一区二区三区精品久久| 亚洲欧美日韩国产另类专区| 蜜桃久久精品一区二区| 日本精品裸体写真集在线观看| 久久免费午夜影院| 亚洲v中文字幕| 国产精品系列在线观看| 精品奇米国产一区二区三区| 日韩影院精彩在线| 在线免费观看不卡av| 国产精品国产精品国产专区不片 |