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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? page2.cpp

?? 一個內(nèi)含進(jìn)程管理、內(nèi)存管理、文件管理的操作系統(tǒng)設(shè)計實現(xiàn)方案
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
								  dlgInput.m_input+='\0';
								  m_display+="Finish Editing\r\n";
								  strcpy(contect,dlgInput.m_input);
								 flag=write(fd,contect,strlen(contect));
								 if(flag == 0)  m_display+="Finish Editing\r\n";
								 else if(flag ==-1)  m_display+="Error:\n The disk size is not enough!\r\n";
								 else  m_display+="The disk is not exist!\r\n";
							}
    
							close(b);
							 m_display+=bufferdir;
								m_display+=">";
							  strLine.Format("%s",m_display);
							  GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							  m_cmd.Empty();
							UpdateData(FALSE);
							  break;                          
						case 5: /*-刪除目錄-*/
							flag=0;
							 k=0;
							  for(j=0;j<strlen(a);)
								  if(a[j]!=' '&&flag==0) j++;
								  else
								  {
									flag=1;
									b[k++]=a[++j];
								  }
			    				b[k]='\0'; 
							rmdir(b);
							 m_display+=bufferdir;
								m_display+=">";
							  strLine.Format("%s",m_display);
							  GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							  m_cmd.Empty();
							UpdateData(FALSE);
							  break;
						 case 6:/*--更改當(dāng)前目錄--*/
							flag=0;
							 k=0;
							  for(j=0;j<strlen(a);)
								  if(a[j]!=' '&&flag==0) j++;
								  else
								  {
									flag=1;
									b[k++]=a[++j];
								  }
			    				b[k]='\0'; 
							flag = chdir(b);
							if(flag == -1) m_display+="Error:\n The path is not correct!\r\n";
							else if(flag == -2) m_display+="Error:\nThe opened is not direct!\r\n";
							else if(flag == -3) m_display+="Error:\nThe '\\' is too much !\r\n";
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
						case 7:/*---move文件--*/
							flag=0;
							k=0;
							for(j=0;j<strlen(a);)
							  if(a[j]!=' '&&flag==0) j++;
							  else if(flagz==0)
							  {
								flag=1;
								name1[k++]=a[++j];
								if(a[j]==' ') 
								{
									flagz=1;
									name1[k]='\0';
									k=0;
								}
							}
							else 
							{						  
							  name2[k++]=a[++j];
							}
							name2[k]='\0';
							mov(name1,name2);
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
						case 8: /*格式化磁盤*/
							format();
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
						case 9:///*-顯示當(dāng)前目錄-*/
							dir();
							m_cmd.Empty();
							UpdateData(FALSE);
							break; 
						case 10: //*--創(chuàng)建子目錄--/
							 
							 flag=0;
							 k=0;
							  for(j=0;j<strlen(a);)
								  if(a[j]!=' '&&flag==0) j++;
								  else
								  {
									flag=1;
									b[k++]=a[++j];
								  }
			    				b[k]='\0'; 
							//	strLine.Format("%d",strlen(b));
						//	GetDlgItem(IDC_EDIT1)->SetWindowText(strLine);
							flag =mkdir(b);
							if(flag == -1) m_display+="Error:\n The length of name is too long!\r\n";
							else if(flag == -2) m_display+="Error:\n The direct item is already full !\r\n";
							else if(flag == -3) m_display+="Error:\n The name is already in the direct ! \r\n";
							else if(flag == -4) m_display+="Error:\n \\ can not in the name of a direct !\r\n";
							else if(flag == -5) m_display+="Error:\n Error: \n The disk space is full!\r\n";
							else if(flag == -6) m_display+="Error: \n '..' or '.' can not as the name of the direct!\r\n";
							else if(flag == 0)  m_display+="Successfully make dircet!!\r\n";
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
					  //case 11:/*-退出系統(tǒng)-*/
					//		free(contect);							 //  return;
						case 12:/*---顯示幫助信息--*/
							print();
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
						case 14:/*----執(zhí)行可執(zhí)行文件---*/
							
							 fd = open(a); //打開所創(chuàng)建的文件
							 if(fd ==-1) 	m_display+="Error:\n The file is not opened !\r\n";
							 else if(fd==-2) 	m_display+="The file can't open !\r\n";
							 else
							 {
								flag = read(fd,contect);
								if(flag == -1) m_display+="Error: \n The size is over the length of the file!\r\n";
								else	executive(contect,flag);
							
							 }
							close(a);
							psw=3;
						//	executive();
							m_display+=bufferdir;
							m_display+=">";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;

						default: 
							m_display+="ERROR: the command isn't exist!\r\n";
							strLine.Format("%s",m_display);
							GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine);
							m_cmd.Empty();
							UpdateData(FALSE);
							break;
					}

                  //MessageBox("Get   IT");   
                  //   add   you   code   here   
              return   true;   
       }   
      return   CDialog::PreTranslateMessage(pMsg); 

}
/*----------------------------------------------------------------------------------------------*/
/*---------------------------------------更改當(dāng)前目錄-------------------------------------------*/

int CPage2::chdir(char *name)
{
	int i,j,k,item;
	char *str,*str1;
	char *temp;
	CString strLine;
	struct direct *temp_dir;
	temp_dir=(struct direct *)malloc(sizeof(struct direct));
	*temp_dir=*cur_dir;  /*-先用臨時目錄代替當(dāng)前目錄-*/
	str=name;  /*-str用來記錄下次查找的起始地址-*/
	if((!strcmp("..",name))||(!strcmp(".",name)))
	{
		m_display+="Error:the two directories are not exist!\r\n";
	    strLine.Format("%s",m_display);
	    GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine); 
		return 0;
	}
	else
	{
		 if(!strcmp("\\",name)) /*如果輸入"\" ,回根目錄*/
		 {
		  cur_dir = root;
		  curdir_block=2;
		  strcpy(bufferdir,"Root:");
		  return 0;
		 }
		 j=0;
		 for(i=0;i<(int)strlen(str);i++)/*查找有兩個連續(xù)是"\",即"\\",退出 */ 
		 {
			if(name[i]=='\\')
			{
				j++;
				 if(j>=2)
				{
					return -3;
				}
			 }
			 else
			 j=0;
		 }

		 if(name[0]=='\\') /*如果最后一個是"\" ,去掉這個"\"*/
		 {
			*temp_dir = *root;
			strcpy(bufferdir,"Root:");
			str++;
		 }
		 if(str[strlen(str)-1] == '\\')
		 {
			 str[strlen(str)-1] = '\0';
		 }


		 str1=strchr(str,'\\'); /*-找到'\'字符的位置-*/

		 temp = (char *)malloc(4*sizeof(char));/*-為子目錄的名字分配空間-*/
		 if((fp=fopen("disk.dat","rb"))==NULL)
		  {
				m_display+="Error:\nCannot open file!\r\n";
				strLine.Format("%s",m_display);
				GetDlgItem(IDC_EDITDIS)->SetWindowText(strLine); 	
				return -11;                                
		 } 
		 while(str1!=NULL) /*-找到-*/
		 {
  
			for(i=0;i<str1-str;i++)
			{
				temp[i]=str[i];
			}
				temp[i]='\0';

			for(j=0;j<MSD;j++) /*-查找該子目錄是否在當(dāng)前目錄中-*/ 
			{
   
				for(k=0;k<(int)strlen(temp);)
				{
					if(temp_dir->directitem[j].name[k]==temp[k])  k++;
					else break;
					if(k==(int)strlen(temp)) {k=-1; break;}
				 }
				if((temp_dir->directitem[j].property=='1')&&(k==-1))
				break;
  
			}
			if(j>=MSD) /*-不在當(dāng)前目錄-*/
			return(-1);
			item=temp_dir->directitem[j].firstdisk;
  
			fseek(fp,item*DISKSIZE,0);
			fread(temp_dir,sizeof(struct direct),1,fp);
			str=str1+1;
			str1=strchr(str,'\\');
  
		 }
  
		 for(i=0;i<(int)strlen(str);i++)
		 temp[i]=str[i];
		 temp[i]='\0';

		 for(j=0;j<MSD;j++) /*-查找該子目錄是否在當(dāng)前目錄中-*/ 
		 {
			 for(k=0;k<(int)strlen(temp);)
			{
				 if(temp_dir->directitem[j].name[k]==temp[k])  k++;
				 else break;
				 if(k==(int)strlen(temp)) {k=-1;break;}
			}
		   if((temp_dir->directitem[j].property=='1')&&(k==-1))
		   break;
		 }

		 free(temp);/*釋放申請的臨時空間*/
		 if(temp_dir->directitem[j].property!='1') /*-打開的不是目錄-*/ 
		 return(-2);
		 if(j>=MSD)  /*-不在當(dāng)前目錄-*/
		 return(-1); 

		 item=temp_dir->directitem[j].firstdisk;
		 /*-當(dāng)前目錄在磁盤中位置-*/
		 fseek(fp,item*DISKSIZE,0);
		 fread(temp_dir,sizeof(struct direct),1,fp);
		 fclose(fp);
	 }

	if(name[0] !='\\')
	bufferdir = strcat(bufferdir,"\\"); /*-修改當(dāng)前目錄-*/
	bufferdir = strcat(bufferdir,name);
    curdir_block=item;
	cur_dir=temp_dir;  /*-將當(dāng)前目錄確定下來-*/
	return 0;
}
/*----------------------------------------------------------------------------------------------*/
/*----------------------------------------關(guān)閉文件----------------------------------------------*/

int CPage2::close(char *name)
{
	int i;

    for(i=0;i<MOFN;i++)
    {
		if(!strcmp(u_opentable.openitem[i].name,name))
		break;   
    } 
    if(i>=MOFN)  /*--文件沒有打開-*/  
    return(-1); 
    /*-----------清空該文件的用戶打開表項的內(nèi)容---------------------*/
    strcpy(u_opentable.openitem[i].name,"");
    u_opentable.openitem[i].firstdisk ='F';
    u_opentable.openitem[i].size = 0;
    u_opentable.cur_size--;
    fd = -1; //文件打開表的序號為 -1 
    return 0;
}
/*----------------------------------------------------------------------------------------------*/
/*---------------------------------------復(fù)制文件-----------------------------------------------*/

int CPage2::copy(char *name1, char *name2)
{
		char *contect;
	int flag;
//////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
	int flag1=0;
    char *temdirect=(char*)malloc(sizeof(DIR_LENGTH));
	char *t=(char*)malloc(5);
	struct direct * temp_dir;
	int i,r=0;
	char *bufferdir_temp=(char*)malloc(sizeof(DIR_LENGTH));
	char curdir_block_temp;
	for(i=0;i<=int(strlen(bufferdir));i++)
		*(bufferdir_temp+i)=*(bufferdir+i);
	curdir_block_temp=curdir_block;
	temp_dir=(struct direct *)malloc(sizeof(struct direct));
	*temp_dir=*cur_dir;  /*-將當(dāng)前目錄確定下來-*/
	
	i=strlen(name1)-1;
	while(i>=0&&name1[i]!='\\')
		i--;
	if(i!=-1)
	{ 
		for(int temp_i=0;temp_i<=5;temp_i++)
			if((name1+i)!=NULL)
			{
				i++;
				*(t+(temp_i))=*(name1+i);
			}
		name1[i-5]='\0';
		i=0;
		while(name1[i]!='\0') 
		{
			*(temdirect+i)=*(name1+i);
			i++;
		}
		*(temdirect+i)='\0';
		flag1=1;
		
	}
	else 
	{
		for(i=0;i<=int(strlen(name1));i++)
			*(t+i)=*(name1+i);
	}
	if(flag1==1)
    r=chdir(temdirect);
	if((r==-1)||(r==-2)) return -7;
	name1=t;
	
	/////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
/*------------------------------把源文件讀到 contect---------------------*/
	contect = (char *)malloc(MAX_WRITE*sizeof(char));
	fd = open(name1); //打開源文件
	if(fd ==-1)
	{
		printf("Error:\n The file is not opened ! \n");
	}	
	else if(fd==-2)
		printf("The file can't open.");
	else
	{
		flag = read(fd,contect);
		*(contect+flag)='\0';
		if(flag == -1)
		{ 
			printf("Error: \n The size is over the length of the file! \n");
		}
		else
		{
			
		}
	}
	close(name1);//關(guān)閉源文件
	if(flag1==1)
	{
		for(i=0;i<=int(strlen(bufferdir_temp));i++)
		*(bufferdir+i)=*(bufferdir_temp+i);
		curdir_block=curdir_block_temp;
		*cur_dir=*temp_dir;  /*-將當(dāng)前目錄確定下來-*/
	}

////////////////////////////////////////////////////////////////////////////////////
	//////////////////////////////////////////////////////////////////////////////////
   flag1=0;
   r=0;
   for(i=0;i<=int(strlen(bufferdir));i++)
		*(bufferdir_temp+i)=*(bufferdir+i);
	curdir_block_temp=curdir_block;
	*temp_dir=*cur_dir;  /*-將當(dāng)前目錄確定下來-*/
	
	i=strlen(name2)-1;
	while(i>=0&&name2[i]!='\\')
		i--;
	if(i!=-1)
	{ 
		for(int temp_i=0;temp_i<=5;temp_i++)
			if((name2+i)!=NULL)
			{
				i++;
				*(t+(temp_i))=*(name2+i);
			}
		name2[i-5]='\0';
		i=0;
		while(name1[i]!='\0') 
		{
			*(temdirect+i)=*(name2+i);
			i++;
		}
		*(temdirect+i)='\0';
		flag1=1;
		
	}
	else 
	{
		for(i=0;i<=int(strlen(name2));i++)
			*(t+i)=*(name2+i);
	}
	if(flag1==1)
    r=chdir(temdirect);
	if((r==-1)||(r==-2)) return -7;
	name2=t;
	

	//////////////////////////////////////////////////////////////////////////
	//////////////////////////////////////////////////////////////////////
/*--------------------------把contect的內(nèi)容寫到目的文件里--------------------*/
	fd = open(name2); //打開目的文件
	if(fd ==-1)
	{
		 printf("Error:\n The file is not exist! \n Please create it first!\n");
	}
	else if(fd==-4) printf("Error:it's not a file,but a directory!\n"); 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠色丁香婷婷综合| 欧美精选午夜久久久乱码6080| 亚洲大尺度视频在线观看| 国产欧美一区二区三区鸳鸯浴 | 亚洲国产中文字幕在线视频综合| 精品久久久久久久久久久久久久久 | 久久精品国产99国产| 亚洲乱码国产乱码精品精可以看 | 亚洲精品免费一二三区| 久久精品视频在线免费观看| 欧美日韩国产乱码电影| 91论坛在线播放| 高清不卡在线观看av| 激情图片小说一区| 秋霞影院一区二区| 蜜桃av一区二区| 热久久国产精品| 日韩成人伦理电影在线观看| 亚洲与欧洲av电影| 一区二区三区产品免费精品久久75 | 国产欧美久久久精品影院| 欧美va亚洲va香蕉在线| 日韩欧美123| 精品久久久久久久久久久久包黑料| 在线不卡的av| 日韩一级成人av| 欧美不卡一区二区| 26uuu亚洲综合色| 久久女同精品一区二区| 国产日本欧美一区二区| 国产精品久久久久三级| 亚洲欧美激情小说另类| 一区二区三区波多野结衣在线观看| 亚洲一区二区三区四区五区中文| 亚洲一区av在线| 日韩成人伦理电影在线观看| 久久99国产精品尤物| 国产精品一品二品| 99国产精品99久久久久久| 色综合天天做天天爱| 欧美人伦禁忌dvd放荡欲情| 欧美一级黄色大片| 国产婷婷色一区二区三区四区| 综合久久久久久久| 亚洲成人第一页| 韩国理伦片一区二区三区在线播放| 懂色一区二区三区免费观看| 99久久婷婷国产精品综合| 欧美精品v国产精品v日韩精品| 精品成a人在线观看| 亚洲精品中文在线影院| 蜜桃视频在线一区| av日韩在线网站| 日韩欧美成人一区二区| 亚洲自拍偷拍麻豆| 黑人精品欧美一区二区蜜桃 | 国产又黄又大久久| 色先锋aa成人| 欧美经典三级视频一区二区三区| 亚洲大尺度视频在线观看| 成人免费毛片片v| 欧美一级专区免费大片| 亚洲蜜臀av乱码久久精品| 国产一区二区三区久久悠悠色av| 欧美日韩免费视频| 亚洲欧美日韩综合aⅴ视频| 国产一区二区三区最好精华液| 欧美日韩一级视频| 亚洲黄色免费网站| 99视频国产精品| 国产日韩av一区| 韩国v欧美v亚洲v日本v| 欧美一级高清片| 午夜精品久久久久久久| 在线观看欧美精品| 中文字幕在线播放不卡一区| 国产精品主播直播| 久久免费午夜影院| 国产在线精品视频| 国产香蕉久久精品综合网| 久久电影网电视剧免费观看| 在线不卡一区二区| 日本成人在线视频网站| 欧美一区二区三区日韩| 日本不卡的三区四区五区| 欧美酷刑日本凌虐凌虐| 日本91福利区| 日韩美女一区二区三区四区| 麻豆精品国产91久久久久久| 91精品国产欧美一区二区| 美腿丝袜亚洲色图| 欧美tickling挠脚心丨vk| 国内精品伊人久久久久av影院 | 成人在线视频一区| 国产精品福利电影一区二区三区四区 | 不卡在线观看av| 亚洲一区二区欧美| 欧美日韩亚洲综合在线| 亚洲成av人片在线观看| 日韩一区二区麻豆国产| 国内精品视频666| 国产精品麻豆一区二区| 色妹子一区二区| 五月综合激情网| 亚洲精品一线二线三线无人区| 国产成人精品免费在线| 一区二区三区四区激情| 日韩视频免费观看高清完整版在线观看 | 国产农村妇女毛片精品久久麻豆| 播五月开心婷婷综合| 午夜精品影院在线观看| 久久久久久一二三区| 色婷婷久久久久swag精品| 免费欧美在线视频| 国产精品久久久久影院老司| 一区二区三区在线影院| 国产亚洲一区字幕| 粉嫩欧美一区二区三区高清影视 | 国产成人自拍在线| 亚洲精品国产第一综合99久久| 欧美一级高清片| 91免费看片在线观看| 久久精品国产一区二区| 亚洲欧美区自拍先锋| 精品国产免费人成在线观看| 91官网在线观看| 国产精品资源在线看| 天堂一区二区在线| 国产精品人人做人人爽人人添| 6080yy午夜一二三区久久| 91网上在线视频| 国产成人精品一区二区三区四区 | 欧美欧美欧美欧美| 99精品桃花视频在线观看| 韩国成人福利片在线播放| 日本aⅴ亚洲精品中文乱码| 亚洲美女屁股眼交| 国产精品福利一区二区三区| 久久精品人人做人人爽97| 日韩欧美一区二区视频| 制服丝袜中文字幕一区| 欧美日韩精品综合在线| 色88888久久久久久影院野外 | 日本网站在线观看一区二区三区 | 成人激情文学综合网| 国产曰批免费观看久久久| 精品在线播放午夜| 蜜臀va亚洲va欧美va天堂| 日韩av不卡一区二区| 日韩高清不卡一区二区| 视频一区免费在线观看| 日本欧美加勒比视频| 久久99深爱久久99精品| 久久66热偷产精品| 国产一区二区三区四区五区入口| 久久99久久99小草精品免视看| 麻豆国产精品一区二区三区| 美国一区二区三区在线播放| 久久成人av少妇免费| 国产伦精品一区二区三区视频青涩| 国产美女精品人人做人人爽| 国产不卡视频一区二区三区| 成人性生交大片免费看视频在线| 成人在线综合网站| 欧美视频一二三区| 日韩三级精品电影久久久| 久久精品视频免费| 亚洲另类在线一区| 日韩精品免费专区| 国产乱码精品一区二区三区忘忧草| 国产成人在线视频免费播放| 色综合久久精品| 日韩三级.com| 中文字幕在线免费不卡| 亚洲一区二区三区四区的| 麻豆91在线看| 94色蜜桃网一区二区三区| 欧美美女网站色| 国产精品色一区二区三区| 亚洲成人av电影在线| 国产在线一区观看| 91福利小视频| 久久先锋影音av鲁色资源| 一区二区三区欧美亚洲| 国产精品伊人色| 欧美性感一类影片在线播放| 国产欧美精品一区二区色综合 | 亚洲18女电影在线观看| 国产成人自拍高清视频在线免费播放| 91成人在线精品| 欧美激情一区二区| 免费黄网站欧美| 在线免费观看日韩欧美| 国产日韩欧美综合在线| 性久久久久久久久久久久| 97se亚洲国产综合在线| 国产亚洲精品7777| 免费成人在线观看| 欧美三级乱人伦电影| 亚洲激情五月婷婷|