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

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

?? cs_mpfs.cpp

?? 將網頁轉換成數組
?? CPP
字號:
/***********************************************************
 * 本程序將輸入文件夾中的文件形成數組形式,方便webserver
 * 來傳輸
 * ---------------------------------------------------------
 * 用法: cs_mpfs  armweb  csimg.c
 *
 * 解釋: 將armweb目錄下的文件全部轉換成數組形式存于
 *       csimg.c文件中,這里將cs_mpfs.exe與目錄armweb放在同一子
 *       目錄下,如d:\arm下有文件cs_mpfs.exe及目錄armweb
 *       我們進入d:\arm,在Dos模式下輸入:
 *             cs_mpfs armweb csimg.c
 *       將會在d:\arm目錄下得到轉換好的csimg.c文件
 *
 *       本軟件針對webpage的文件轉換,文件我們又定死為8.3格式,但jave
 *       程序必將會產生.class文件,因為最后我們要產生一個文件名對應表,
 *       這個表又需要真實文件名才好,所以最后我們進行了處理
 *       但是對于其他文件擴展名>3的文件,我們將會產生錯誤的結果,這點需要
 *       在調用本程序之前加以保證
 **********************************************************/
#include <stdio.h>
#include <dos.h>
#include <dir.h>
#include <io.h>
#include <string.h>
#include <fcntl.h>
#include <stdlib.h>
#include <ctype.h>
#include <time.h>

#define     MAX_DIR_LEN         80      /* 目錄名 */
#define     MAX_FILE_NAME_LEN   120     /* 文件名最大長度,包括路徑 */
#define     MAX_FILE_SUM        80      /* 被轉換的目錄里最多的文件數 */
#define     MAX_DATA_PER_LINE   8       /* 每行最多放多少個字節 */
#define     JS_FILE_ADD_SUM     100     /* .JS文件需要webserver軟件動態形成,這里雖然做成數組狀,
                                           但實際上去沒用,因為是動態生成,所以可能造成
                                           數組容量會增大, 這里暫定一個值
                                         */
FILE    *fp_wr,*fp_rd;
struct  ffblk	ff_blk;
char    fileNameBuf[MAX_FILE_NAME_LEN];
char    dirBuf[MAX_DIR_LEN];
char    fileNameArray[MAX_FILE_SUM][13];
time_t  current_time,current_time1;
struct tm *datetime,datetime1;
//************************************************************************
void buildNameArray(char dirbuf[],struct ffblk ff_blk,int fileno) {
    FILE    *fp_rd;
    long    file_size;
    int     lineNumCtr=0;
    int     sizeLSB,sizeMSB;
    int     file_handle;
    int     c;
    char    filename[MAX_FILE_NAME_LEN];
    char    fn_1[14],*fn_2;
    int     f_isJSfile=0;
	//int     f_havedata=0;

    strcpy(filename,dirbuf);
    strcat(filename,ff_blk.ff_name);
    if ((file_handle=open(filename,O_RDONLY))==-1)
        return;
    file_size=filelength(file_handle);	// get file size
    close(file_handle);

    fp_rd=fopen(filename,"rb");
    if (fp_rd == NULL)
        return;

    strcpy(fn_1,ff_blk.ff_name);
    fn_2=strchr(fn_1,'.');
    *fn_2=0;
    fn_2++;         // 取得文件名的擴展名
    if (strcmp(fn_2,"JS")==0)
        f_isJSfile=1;

    fprintf(fp_wr,"\n/*******************************************\n");
    fprintf(fp_wr," * Start Of \'");
    fprintf(fp_wr,"%s",ff_blk.ff_name);
    fprintf(fp_wr,"\' file...\n");
    fprintf(fp_wr," ******************************************/\n");
    if (f_isJSfile==1) {
        fprintf(fp_wr,"unsigned char %s[%d]= {\n",fn_1,file_size+JS_FILE_ADD_SUM);
    }
    else { 
        fprintf(fp_wr,"static ROM unsigned char CS_FILE_");
	    fprintf(fp_wr,"%04d[]= {\n",fileno);
    }
    sizeLSB=file_size & 0xff;
    sizeMSB=(file_size>>8) & 0xff;
    fprintf(fp_wr,"    0x%02x,0x%02x,",sizeMSB,sizeLSB);    // 文件長度值

    while ((c=fgetc(fp_rd)) != EOF) {
        //f_havedata=1;
        if (lineNumCtr==0)
            fprintf(fp_wr,"\n    ");
        fprintf(fp_wr,"0x%02x,",c);     
        lineNumCtr++;
        if (lineNumCtr>=MAX_DATA_PER_LINE) {
            lineNumCtr=0;
        }
    }
    fseek(fp_wr,-1,SEEK_CUR);	// get rid of ',' at last word
    fprintf(fp_wr,"\n};\n");

    fprintf(fp_wr,"/*******************************************\n");
    fprintf(fp_wr," * End Of \'");
    fprintf(fp_wr,"%s",ff_blk.ff_name);
    fprintf(fp_wr,"\' file...\n");
    fprintf(fp_wr," ******************************************/\n\n");

    fclose(fp_rd);

    printf("\n%s has been added ...!\n",filename);
}

//************************************************************************
//void BuildJSFile(int filelen) {
//	filelen+=30;
//	fprintf(fp_wr,"\n/*******************************************\n");
//	fprintf(fp_wr," * Start Of \'");
//	fprintf(fp_wr,"SETBOOT.JS");
//	fprintf(fp_wr,"\' file...\n");
//	fprintf(fp_wr," ******************************************/\n");
//	fprintf(fp_wr,"static ROM unsigned char SETBOOT[%d]={\n}");
//	fprintf(fp_wr,"%04d[]= {\n",fileno);

//	sizeLSB=file_size & 0xff;
//	sizeMSB=(file_size>>8) & 0xff;
//	fprintf(fp_wr,"    0x%02x,0x%02x,",sizeMSB,sizeLSB);    // 文件長度值

//}

//************************************************************************
void buildFileNameIndex(int fileno) {
    //int i;
    int j=0;
    char fn_1[14],*fn_2;

    fprintf(fp_wr,"/*******************************************\n");
    fprintf(fp_wr," * Start Of CS_FILE FAT.\n");
    fprintf(fp_wr," ******************************************/\n");
    fprintf(fp_wr,"typedef struct\n{\n");
    fprintf(fp_wr,"    unsigned char Flags\;\n");
    fprintf(fp_wr,"    ROM unsigned char* Address\;\n");
    fprintf(fp_wr,"    unsigned char Name[12]\;\n");
    fprintf(fp_wr,"} FAT_TABLE_ENTRY\;\n\n");
    
    fprintf(fp_wr,"ROM FAT_TABLE_ENTRY CS_FILE_Start[] =\n{");

    
    while (j<fileno) {
        strcpy(fn_1,fileNameArray[j]);
        fn_2=strchr(fn_1,'.');
        *fn_2=0;
        fn_2++;         // 取得文件名的擴展名
	    
        if (strcmp(fn_2,"JS")==0)
            fprintf(fp_wr,"\n    { 0x00, %s, ",fn_1);
        else if (strcmp(fn_2,"CLA")==0) {   // 假如有文件名movie.class,將會被轉換成MOVIE~1.CLA
                                            // 實際上我們需要得到MOVIE.CLASS
            fn_2=strchr(fn_1,'~');
            if (fn_2 != 0) {                // 默認為.CLASS文件
                *fn_2=0;
                strcat(fn_1,".CLASS");
            }
            strcpy(fileNameArray[j],fn_1);  // 反過來送回
            fprintf(fp_wr,"\n    { 0x00, CS_FILE_%04d, ",j);
        }
        else
            fprintf(fp_wr,"\n    { 0x00, CS_FILE_%04d, ",j);

        fprintf(fp_wr,"\"%s\"",fileNameArray[j]);
        fprintf(fp_wr,"},");

        j++;
    }
    fprintf(fp_wr,"\n    { 0x04, (unsigned char *)0xffffffff, \"END OF FAT\" }\n};\n");

    fprintf(fp_wr,"/*******************************************\n");
    fprintf(fp_wr," * End Of CS_FILE FAT.\n");
    fprintf(fp_wr," ******************************************/\n");

    fprintf(fp_wr,"\n");

}

//************************************************************************
int main(int argc,char *argv[]) {
    char buff[50];
    struct time curr_time;
    struct date curr_date;
    int i;

    if (argc<3) {
        printf("\n");
        printf("1. Usage: cs_mpfs DirectoryName OutPut-FileName\n");
        printf("   such as : cs_mpfs webpages csimg.c\n");

        printf("\n");
        printf("2. Note: All file name length be accord to \"8.3\" format\n");
        printf("\n");
        printf("3. Because this convert is for webpages, so we will maybe meet \".class\" file,\n");
        printf("   if so, we should ensure the filename length no more than 6\n");
        printf("   such as :\tmovie.class, movie1.class is ok !\n");
        printf("\t\tbut movie10.class is too long, error !\n");

        printf("\n");
        printf("4. This program only agree \".class\" file\n");
        printf("   when else's filename extension length > 3, you will get error result !\n");

        return 1;
    }

    daylight = 0;
    if ((fp_wr=fopen(argv[2],"wt")) == NULL) {
        printf("\nOpen Output File - ");
        printf(argv[2]);
        printf(" Error\n");
        return 1;
    }
    getdate(&curr_date);
    gettime(&curr_time);
    time(&current_time);

    fprintf(fp_wr,"/**************************************************\n");
    fprintf(fp_wr," * This is a CS_FILE image for \'C\' compiler,\n");
    fprintf(fp_wr," * generated by CS_MPFS.EXE utility.\n");
    fprintf(fp_wr," * DO NOT MODIFY BY HAND.\n");
    fprintf(fp_wr," * Always use CS_MPFS.EXE utlity to create this file.\n");
    fprintf(fp_wr," * Programmer : Chenshi\n");
    fprintf(fp_wr," * Contact    : stonechan@21cn.com\n");
    fprintf(fp_wr," * Copyright@ 2004 eVision Limited Company \n");
    fprintf(fp_wr," * Generated on ");
    fprintf(fp_wr,"%d-%d-%d ",curr_date.da_mon,curr_date.da_day,curr_date.da_year);
    fprintf(fp_wr,"%02d:%02d:%02d\n",curr_time.ti_hour,curr_time.ti_min,curr_time.ti_sec);
	
    datetime = localtime(&current_time);
    strftime(buff,sizeof(buff),"%a, %d %b %Y %H:%M:%S Machine Time",datetime);
    fprintf(fp_wr," * %s\n",buff);

    datetime = gmtime(&current_time);
    strftime(buff,sizeof(buff),"%a, %d %b %Y %H:%M:%S GMT Time",datetime);
    fprintf(fp_wr," * %s\n",buff);
	
    tzset();
    fprintf(fp_wr," * Current time zone is %s\n",tzname[0]);

	/*
	datetime1.tm_year  = curr_date.da_year-1900;
	datetime1.tm_mon   = curr_date.da_mon - 1;
	datetime1.tm_mday  = curr_date.da_day ;
	datetime1.tm_hour  = curr_time.ti_hour;
	datetime1.tm_min   = curr_time.ti_min;
	datetime1.tm_sec   = curr_time.ti_sec;
	*/
	
	// 1970.1.1  00:00:00
	datetime1.tm_year  = 70;
	datetime1.tm_mon   = 0;
	datetime1.tm_mday  = 1;
	datetime1.tm_hour  = 0;
	datetime1.tm_min   = 0;
	datetime1.tm_sec   = 0;
    datetime1.tm_isdst = 0;
    
	current_time1 = mktime(&datetime1);
	
    fprintf(fp_wr," *************************************************/\n");

    fprintf(fp_wr,"\n#include <time.h>\n\n");
	
    fprintf(fp_wr,"\n#define ROM  const\n");

    getcwd(dirBuf,MAX_DIR_LEN);
	
    strcpy(fileNameBuf,dirBuf);
    strcat(fileNameBuf,"\\");
    strcat(fileNameBuf,argv[1]);
	
    //strcpy(fileNameBuf,argv[1]);
    strcat(fileNameBuf,"\\*.*");
    //strcpy(fileNameBuf,"*.*");

    strcpy(dirBuf,argv[1]);
    strcat(dirBuf,"\\");

    int fileno=0;
    int done=0;
    while (!done) {
        if (fileno==0) {
            done=findfirst(fileNameBuf,&ff_blk,0);
            //done=findfirst("*.*",&ff_blk,0);
        }
        else {
            done=findnext(&ff_blk);
        }
        if (done)
            break;
        //if (strcmp(ff_blk.ff_name,"setboot.js")==0)
        //	continue;
        i=0;
        while (ff_blk.ff_name[i]!=0) {
            toupper(ff_blk.ff_name[i]);
            i++;
        }
        strcpy(fileNameArray[fileno],ff_blk.ff_name);
        buildNameArray(dirBuf,ff_blk,fileno);
        fileno++;
        if (fileno>MAX_FILE_SUM) {
            printf("Note : total file number maybe too many (no more than 80)!\n");
            break;
        }		    
    }
    buildFileNameIndex(fileno);
    
    fprintf(fp_wr,"\ntime_t  webCrtTime = %ld;\n",(long)(current_time-current_time1));
    //fprintf(fp_wr,"\ntime_t  webSysTime = %ld;\n",(long)current_time1);
    
    fprintf(fp_wr,"\n");    
    
    fprintf(fp_wr,"/*******************************************\n");
    fprintf(fp_wr," * End Of CS_FILE.\n");
    fprintf(fp_wr," ******************************************/\n");

    fclose(fp_wr);
    exit (1);
    return 1;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲在线一区二区三区| 亚洲精品免费一二三区| 欧美巨大另类极品videosbest | 天堂va蜜桃一区二区三区漫画版| 亚洲欧美另类图片小说| 亚洲欧美激情插 | 欧美高清在线精品一区| 久久综合九色综合97婷婷| 精品久久久久一区| 久久精品欧美日韩| 欧美激情艳妇裸体舞| 亚洲欧美一区二区三区国产精品| 日韩美女视频一区二区 | 精品sm捆绑视频| 日韩欧美国产综合在线一区二区三区 | 91精品在线观看入口| 欧美日韩三级一区| 日韩免费看的电影| 国产精品视频一二三| 亚洲一区二区三区影院| 日本成人在线视频网站| 国产高清视频一区| 日本精品一区二区三区四区的功能| 色悠悠亚洲一区二区| 欧美日韩午夜在线| 久久新电视剧免费观看| 亚洲色图一区二区| 肉色丝袜一区二区| 波多野结衣在线一区| 欧美另类一区二区三区| 国产欧美精品日韩区二区麻豆天美| 国产精品电影院| 日韩在线观看一区二区| 国产999精品久久久久久| 91在线无精精品入口| 欧美一区二区在线免费观看| 久久日一线二线三线suv| 亚洲乱码国产乱码精品精的特点| 日日摸夜夜添夜夜添亚洲女人| 国产成人综合网| 欧美人成免费网站| 综合激情成人伊人| 免费成人av在线| 色综合久久中文字幕综合网| 欧美一区二区在线免费播放| 亚洲精品久久久蜜桃| 国产精品18久久久久| 欧美日韩精品一区二区三区四区 | 精品奇米国产一区二区三区| 国产精品美女久久久久久| 蜜桃久久av一区| 91免费观看在线| 日本一区二区三区国色天香 | 欧美日韩国产片| 亚洲欧美一区二区视频| 精品一区二区成人精品| 91.麻豆视频| 一色桃子久久精品亚洲| 亚洲自拍偷拍综合| 国产91在线观看丝袜| 日韩女优电影在线观看| 一区二区三区日本| 91视频国产资源| 国产人成亚洲第一网站在线播放 | 亚洲欧美日韩中文播放 | 国产精品午夜电影| 国产一区视频导航| 日韩三级av在线播放| 奇米精品一区二区三区四区| 欧美丝袜自拍制服另类| 亚洲黄一区二区三区| 91女人视频在线观看| 国产精品拍天天在线| 成人一区二区三区| 国产精品色噜噜| 91丨porny丨蝌蚪视频| 国产精品女主播av| 99re热这里只有精品免费视频| 久久精品男人天堂av| 顶级嫩模精品视频在线看| 久久久久久电影| 成人免费视频免费观看| 亚洲欧洲中文日韩久久av乱码| 91啪亚洲精品| 亚洲国产日日夜夜| 日韩精品中午字幕| 岛国精品在线观看| 亚洲婷婷综合久久一本伊一区| 91小视频在线免费看| 亚洲va国产va欧美va观看| 日韩一区二区三区三四区视频在线观看 | 26uuu国产在线精品一区二区| 久久国产视频网| 久久丝袜美腿综合| 色综合久久久久综合99| 五月开心婷婷久久| 26uuu精品一区二区| av不卡免费在线观看| 亚洲国产va精品久久久不卡综合| 88在线观看91蜜桃国自产| 极品少妇一区二区三区精品视频| 久久久久久久久岛国免费| 色综合久久中文综合久久97| 日韩电影免费一区| 国产精品美女视频| 91精品国产高清一区二区三区| 久久国产精品无码网站| 亚洲欧洲av在线| 4438成人网| 波多野结衣视频一区| 日韩高清中文字幕一区| 国产精品无圣光一区二区| 色久综合一二码| 麻豆精品视频在线观看视频| 亚洲欧美日韩国产综合| 欧美成人性战久久| 91老司机福利 在线| 日本不卡中文字幕| 一区二区三区精品在线| 久久男人中文字幕资源站| 欧美日韩一二三| 96av麻豆蜜桃一区二区| 国产一区二区三区精品欧美日韩一区二区三区| 国产精品女上位| www久久久久| 欧美一区二区三区视频免费播放 | 国产精品久久毛片| 69p69国产精品| 色婷婷激情综合| 成人一区二区在线观看| 奇米四色…亚洲| 樱桃视频在线观看一区| 久久久久久亚洲综合影院红桃| 欧美日韩精品一区二区三区| 99久久国产综合精品女不卡| 国产黄色成人av| 国模套图日韩精品一区二区 | 亚洲线精品一区二区三区 | 日韩一区二区不卡| 在线这里只有精品| 91蝌蚪国产九色| av一本久道久久综合久久鬼色| 国产成人精品综合在线观看| 麻豆精品一区二区三区| 毛片不卡一区二区| 蜜桃av噜噜一区| 久久精品99国产国产精| 狠狠色丁香婷婷综合| 久久精品国产77777蜜臀| 麻豆精品在线播放| 精品一区二区国语对白| 国产精品一区二区久久精品爱涩 | 欧美性猛交一区二区三区精品| 不卡一区二区三区四区| www.日本不卡| 91免费版在线看| 91久久国产综合久久| 91久久奴性调教| 91福利资源站| 欧美一区日本一区韩国一区| 欧美一区二区三区视频在线 | 蜜桃在线一区二区三区| 美女视频黄频大全不卡视频在线播放| 丝袜美腿一区二区三区| 久久国产剧场电影| 懂色一区二区三区免费观看| www.日韩精品| 欧美午夜寂寞影院| 日韩精品在线一区| 中文无字幕一区二区三区| 国产精品福利在线播放| 亚洲与欧洲av电影| 美女高潮久久久| 成人免费毛片嘿嘿连载视频| 91久久精品一区二区| 欧美一区二区精品久久911| 久久久久久久国产精品影院| 亚洲色图一区二区三区| 香蕉成人啪国产精品视频综合网| 毛片av中文字幕一区二区| 成人综合婷婷国产精品久久| 91免费精品国自产拍在线不卡| 91精品福利在线一区二区三区| 久久久久久久久久久久电影| 亚洲尤物在线视频观看| 国产一区二区久久| 欧美性色欧美a在线播放| 精品久久人人做人人爰| 亚洲久本草在线中文字幕| 久久99久久99小草精品免视看| youjizz久久| 日韩欧美亚洲另类制服综合在线| 国产精品久久久久久久久久免费看 | 欧美久久久久久久久久| 国产欧美综合在线| 亚洲一区二区三区不卡国产欧美| 国产精品18久久久久久vr| 91精品国产免费| 亚洲国产成人精品视频| 成人av中文字幕|