资源简介
.eap文件使用Enterprise architect打开。
项目是模拟cmd功能实现的,主要是在虚拟文件系统中实现cd、dir、mkdir、rmdir、copy、compare、del等命令。

代码片段和文件信息
#include “stdafx.h“
#include “CdCmd.h“
bool CdCmd::Execute(Dirobject* rootDir MyListject>* workingPath)
{
bool flag = true;
Dirobject* curPosition = rootDir;
Dirobject* dirNode = NULL;
MyString tempDirName;
//路径类型
int dirType = this->path1Type;
switch(dirType)
{
case msg.FLOD_PATH://相对路径
//遍历workingPath定位到当前目录
workingPath->InitList();
while(workingPath->GetNextNode() != NULL)
{
tempDirName = workingPath->GetCurNode()->GetDirName();
curPosition = curPosition->Find(tempDirName);
if(curPosition == NULL)
{
flag = false;
break;
}
}
//遍历pathElesList找到指定位置,没有找到,返回false
if(flag)
{
pathElesList.InitList();
while(pathElesList.GetCurNode() != NULL)
{
tempDirName = pathElesList.GetCurNode()->GetDirName();
if(curPosition->Find(tempDirName)!=NULL)
{
//更新工作目录
Dirobject* dirNode = new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
}
else
{
//路径不存在
flag = false;
break;
}
pathElesList.GetNextNode();
}
}
break;
case msg.FLOD_WHOLE_PATH://绝对路径
workingPath->Empty();
pathElesList.InitList();
//添加盘符
tempDirName = pathElesList.GetCurNode()->GetDirName();
dirNode = new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
while(pathElesList.GetNextNode() != NULL)
{
tempDirName = pathElesList.GetCurNode()->GetDirName();
if(curPosition->Find(tempDirName)!=NULL)
{
//创建目录
dirNode= new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
curPosition = curPosition->Find(tempDirName);
}
else
{
flag = false;
break;
}
}
break;
case msg.BACK_TO_PARENT://返回到上一目录
workingPath->InitList();
while(workingPath->GetNextNode() != NULL)
{
dirNode = workingPath->GetCurNode();
}
workingPath->DelNode(*dirNode);
break;
case msg.BACK_TO_ROOT://返回到根目录
workingPath->InitList();
//添加盘符
tempDirName = workingPath->GetCurNode()->GetDirName();
dirNode = new VirtualFold(tempDirName);
workingPath->Empty();
workingPath->AddNode(*dirNode);
break;
default:
flag = false;
}
if(flag)
{
std::cout << “命令执行成功“ << std::endl;
}
else
{
std::cout << “命令执行失败“ << std::endl;
}
return flag;
}
void CdCmd::SetPath1Type(int path1Type)
{
this->path1Type = path1Type;
}
int CdCmd::GetPath1Type()
{
return path1Type;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 67584 2015-02-15 14:38 虚拟磁盘项目\1虚拟磁盘项目——任务.doc
文件 2803712 2015-02-15 00:12 虚拟磁盘项目\VirtualDisk.eap
文件 114688 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.exe
文件 802340 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.ilk
文件 1108992 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.pdb
文件 2798 2015-02-13 18:05 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CdCmd.cpp
文件 325 2015-02-13 14:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CdCmd.h
文件 242 2015-02-13 14:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Cmd.cpp
文件 416 2015-02-13 16:14 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Cmd.h
文件 1076 2015-02-12 20:27 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdElement.cpp
文件 324 2015-02-12 17:27 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdElement.h
文件 2017 2015-02-15 12:13 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFactory.cpp
文件 528 2015-02-13 11:15 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFactory.h
文件 249 2015-02-13 12:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFormatCheck.cpp
文件 607 2015-02-13 12:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFormatCheck.h
文件 1341 2015-02-13 11:34 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdParaAnalysis.cpp
文件 382 2015-02-13 11:15 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdParaAnalysis.h
文件 2519 2015-02-14 12:34 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdSplit.cpp
文件 334 2015-02-12 17:50 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdSplit.h
文件 1261 2015-02-14 15:21 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdTypeAnalysis.cpp
文件 203 2015-02-12 21:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdTypeAnalysis.h
文件 6901 2015-02-15 12:36 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CompareCmd.cpp
文件 733 2015-02-15 07:39 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CompareCmd.h
文件 15442 2015-02-15 11:38 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CopyCmd.cpp
文件 1082 2015-02-15 08:58 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CopyCmd.h
文件 966 2015-02-15 10:25 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CreateNewCmd.cpp
文件 602 2015-02-15 10:24 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CreateNewCmd.h
文件 8556 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\BuildLog.htm
文件 57114 2015-02-15 12:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\CdCmd.obj
文件 27116 2015-02-15 12:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\Cmd.obj
............此处省略97个文件信息
相关资源
- oracle数据迁移项目实施方案
- CCS中如何生成LIB文件-并在另外CCS项目
- VisualStudioUninstaller vs卸载工具
- 组态王驱动开发包3.0.0.7(中文)
- 多窗口后台鼠标连点器
- 使用选择性重传协议实现UDP可靠通信
- 农场开发项目
- VC 获得文件属性 获取文件的创建时
- 读者写者问题(读者优先,写者优先
- 用VC 编写的仿QQ聊天室程序源代码
- 外点法程序
- 外罚函数程序
- qt-电子点菜系统
- 完整的项目案例
- 推箱子及人工智能寻路C 源代码
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- MUSIC算法c 实现
- C 餐厅叫号系统(QT平)
- GIS项目开发文档(分析、设计、实现
- 国际象棋c 完整版
-
ob
jectARX给Auto CAD加工具条 - ARM嵌入式项目实战
- 画图程序MFC/VC/VC CRectTracker 串行化
- MFC网络编程实例
- c 课程设计 职工信息管理系统
- VC 游戏编程—附源代码
- IpHlpApi.h&IpHlpApi.lib
- 清华大学 c 郑莉 ppt课件
- c 程序判断离散数学中命题公式
评论
共有 条评论