DrGraph®软件考试系统接口文档
2013-09-08 20:43
281 查看
DrGraph®软件
考试接口文档手册
产品名称: | 图形博士(DrGraph®) |
用户单位: | 昆明XX行业 |
编写人员: | 陈昊明 |
时 间: | 2013年8月 |
欢迎使用图形博士(DrGraph®)软件!
本手册适用于指导用户安装DrGraph®及后续对DrGraph®软件的操作,它将是用户工作的指南。
本手册目前由很多人持续地维护,其中的内容需要不断地更新。如果您有兴趣参加这项工作,请发邮件到 ChenBinWen@gmail.com 进行联系,也可以通过QQ:282397369 或msn: ChenBinWen@hotmail.com 在线联系。如果您希望得到一份印刷版本的手册,也请通过上述方式联系。
热忱欢迎志同道合的朋友们,我们可以在技术、市场等领域全方位合作。
本手册与软件将持续完善更新,您可以随时访问以下地址,以获取最新版本的文档与演示程序。
http://www.DrGraph.com
开发组
2013年8月
目
录
1. 概述 1
1.1 结构 1
1.2 准备工作 1
1.3 使用流程 1
1.4 与图形博士软件接口相关逻辑 1
2. 接口说明 3
2.1 概述 3
2.2 参数说明 5
2.2.1 文件名 5
2.2.2 打开指定脚本 6
2.2.3 指定屏幕 7
2.2.4 全屏显示 8
2.2.5 随机出题 9
2.2.6 合并显示 9
概述
结构
考试系统分两大部分:管理系统与图形博士软件硬件系统包括考试控制端、考生端、评委端、主持人端、投影大屏幕
准备工作
在目标计算机上安装DrGraph软件,并注册在C盘根目录下创建1.sch文件
将考试题库中相应的库文件拷贝到安装目录
编辑安装目录下的cbw.graph.cfg,根据三屏投影大屏最左端屏幕的左端位置,确定UIConfig节点中的StartMonitorIndex的属性值,缺省为0,表示起始的屏幕号。
使用流程
用户提前出题,保持在服务端考试时,控制端从服务端读取题目并展示
考生作答
评委评分
与图形博士软件接口相关逻辑
用户出题时,需按规范格式出题控制端相关逻辑
解析判断:若解析判断为图形相关题目时,需解析出其中的文件名称FileName.sch及参数Params
文件拷贝:拷贝FileName.sch文件(若FileName.files目录存在,也一并拷贝)到目标地址
参数构造:根据逻辑(详见下章)构造出参数,通过ShellExecute调用图形博士
接口说明
概述
字符串接口字符串接口为一个字符串,其结构为两部分,即文件名 参数,文法表示为
FileName.sch[ paramName=paramValue]*
*表示包含[]中部分零个或多个
[]中部分表示参数,格式为参数名=参数值
文件名,后缀固定为.sch
文件名为Windows合法文件名称,可包含路径
paramName与paramValue均为字母与/或数字组合
考试管理系统判断逻辑
考试系统读取得到字符串接口时,需要判断一下该字符串中是否存在.sch,若存在,则表示为图形博士相应逻辑,需进行相应处理
bool __fastcall IsDrGraphLogic(AnsiString interfaceString) {
int pos = interfaceString.Pos(".sch");
bool result = pos != 0;
return result;
}
考试系统从字符串接口中取得文件名称、参数列表逻辑
考试系统读取得到字符串接口时,若判断为图形博士逻辑,则可取出图形文件名称及参数列表
AnsiString __fastcall GetDrGraphFileName(AnsiString interfaceString) {
AnsiString result = "";
if(IsDrGraphLogic(interfaceString))
result = interfaceString.SubString(1, interfaceString.Pos(".sch") + 3).Trim();
return result;
}
AnsiString __fastcall GetDrGraphParams(AnsiString interfaceString) {
AnsiString result = "";
if(IsDrGraphLogic(interfaceString))
result = interfaceString.SubString(interfaceString.Pos(".sch") + 3, interfaceString.Length()).Trim();
return result;
}
考试系统拷贝文件逻辑
拷贝图形博士文件时,首先拷贝文件,若存在对应的.files目录,则将该目录下的文件相应拷贝
void __fastcall DoCopyFile(AnsiString fileName, AnsiString destDirectory) {
AnsiString destFileName = destDirectory + ExtractFileName(fileName);
CopyFile(fileName, destFileName, true);
AnsiString directoryName = ChangeFileExt(fileName, ".files");
destDirectory += ExtractFileName(directoryName) + "\\";
if(DirectoryExists(directoryName)) {
TStrings * fileNames = new TStringList;
BrowDirectory(fileNames, directoryName, "*.*", true);
for(int i = 0; i < fileNames->Count; ++i) {
AnsiString fileName = fileNames->Strings[i];
DoCopyFile(fileName, destDirectory);
}
}
}
void __fastcall BrowDirectory(TStrings * strings,
AnsiString PathName, AnsiString extName,
bool OnlyFileFlag) {
TSearchRec sr;
// 列举所有的目录
if (FindFirst(PathName + "*.*", faAnyFile, sr) == 0) {
do {
if ((sr.Attr & faDirectory) && sr.Name != "." && sr.Name != ".." &&
!OnlyFileFlag)
BrowDirectory(strings, PathName + sr.Name + "\\", extName,
OnlyFileFlag);
}
while (FindNext(sr) == 0);
FindClose(sr);
}
// 列举所有文件
if (FindFirst(PathName + extName, faAnyFile, sr) == 0) {
do {
if (SameText(sr.Name, "Thumbs.db"))
continue;
if (!(sr.Attr & faDirectory)) {
AnsiString n = sr.Name;
if (n.Length())
strings->Add(PathName + n);
}
}
while (FindNext(sr) == 0);
FindClose(sr);
}
}
考试系统调用图形博士逻辑
考试系统构造出接口字符串后,可按以下方式调用图形博士
void __fastcall CallDrGraph(AnsiString interfaceString) {
if(IsDrGraphLogic(interfaceString))
{
char exeFileName[MAX_PATH];
FindExecutable( "C:\\1.sch", NULL, exeFileName);
if (!FileExists(exeFileName))
return;
ShellExecute(NULL, "Open", exeFileName, interfaceString.c_str(), NULL, SW_SHOW);
}
}
参数说明
见前述说明字符串接口为一个字符串,其结构为两部分,即文件名 参数,文法表示为
FileName.sch[ paramName=paramValue]*
*表示包含[]中部分零个或多个
[]中部分表示参数,格式为参数名=参数值
文件名,后缀固定为.sch
文件名为Windows合法文件名称,可包含路径
paramName与paramValue均为字母与/或数字组合,本节就本参数进行说明。调用方式见前述说明,本节仅列出参数内容,即ShellExecute(NULL, "Open", exeFileName, interfaceString.c_str(), NULL, SW_SHOW)语句中的interfaceString的内容,[]中的内容表示在本段说明中不关注的内容
文件名
文件名即FileName.sch,即字符串接口中第一个空格前的内容。DrGraph软件将打开该文件,即,只要DrGraph收到传入参数,则将会打开该文件,用户需要确保该文件存在。如,用户调用时传入interfaceString为:
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch [….]
则运行后,DrGraph软件将打开该图形文件
打开指定脚本
用户可以通过以下参数要求图形博士软件打开图形后,调用指定名称的脚本并运行之ScriptName=abcd
注意:此处的流程必须存在,否则将没有动作,并提示出错。
如,用户调用时传入interfaceString分别为:
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch scriptName=未命名流程!
运行过程一个截图界面为:
指定屏幕
用户可以通过以下参数指定待显示的屏幕:destMonitors=1/2/3/1,2/2,3/1,2,3…
若用户参数未指定屏幕,则图形博士软件将以上次退出的尺寸位置进行显示。
其中,序号表示监视器在Windows桌面中的显示序号,可通过显示属性查看各监视器的序号值。
可以指定多个连续的监视器,则DrGraph将显示在该相应的多个屏幕上。
如,以下三张图片表示用户调用时传入interfaceString为:
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=1,2 [….]
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=1 [….]
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=2 [….]
其运行结果分别为:
全屏显示
用户可以通过以下参数指定是否以全屏方式显示界面FullScreenFlag=true/false,若不指定,缺省将以非全屏方式显示
如,用户调用时传入interfaceString为:
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=1 FullScreenFlag=true [….]
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=2 FullScreenFlag=true [….]
D:\Work\QianTech\Install\ScriptResources\GeneralExample\红石.sch destMonitors=1,2 FullScreenFlag=true [….]
显示结果分别为:
随机出题
用户可以通过以下参数要求图形博士软件打开图形(必须为流程图)后,调用指定名称的脚本进行随机出题:blankNumber=n1 faultNumber=n2 moveNumber=n3
如,用户调用时传入interfaceString分别为:
F:\.sch destMonitors=1 blankNumber=5
原始正确流程图为
合并显示
AttachFile=A.schA.sch为待合并显示的文件名称
相关文章推荐
- 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(六) MiniGUI 提供的非 GUI/GDI 接口
- 医院HIS系统与第三方软件接口探讨
- 全国计算机技术与软件专业技术资格(水平)考试【软件评测师】-考试内容总结(一)计算机系统构成及硬件基础知识
- vb.net机房收费系统重构——总结(四)软件工程文档3
- CCF计算机软件能力认证考试-201412-1-门禁系统
- 方维订餐系统短信接口开发,短信接口开发文档
- 推荐一款接口文档在线管理系统-MinDoc
- 著名豆腐渣软件项目:美国联邦调查局虚拟案件文档系统
- Swagger 一款RESTFUL接口的文档在线自动生成+功能测试功能软件
- PSP个人软件开发系统面向对象需求分析与设计文档
- 网校系统考试平台功能文档——以因酷为例
- 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南六——MiniGUI 提供的非 GUI/GDI 接口
- 【集成】通过系统集成软件水平考试有捷径(免费)-刘俊平
- 艳辉接口文档管理系统
- Swagger: 一个restful接口文档在线生成+功能测试软件
- 编写软件架构文档说明,第 2 部分: 开发系统上下文
- 网络考试与智能评测系统整理文档(一)——连接语句,登陆,cookies使用
- 一款RESTFUL接口的文档在线自动生成+功能测试功能软件——Swagger简介
- 系统软件开发文档编写指南
- MinDoc 接口文档在线管理系统