接口设计方案Word文档下载推荐.docx
- 文档编号:22391450
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:10
- 大小:45.33KB
接口设计方案Word文档下载推荐.docx
《接口设计方案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《接口设计方案Word文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
char*pRule:
监控规则,XML格式,见附1
2、boolSetRule(char*pRule);
Start
设置完规则,启动监控规则生效
3、boolStart();
WaitData
实时等待获取监控数据可以是一条可以是多条。
返回监控结果见附2
int&
nCount返回总条数,char**&
pData返回数据。
-1.异常0.成功获取数据1.结束/停止(其他地方调用Stop接口停止)
建议乙方内部实现用信号、内核事件等处理方式。
4、intWaitData(int&
nCount,char**&
pData);
甲方调用伪代码:
ThreadFunc()//实时线程
{
While(TRUE)
char**pData=NULL;
intnCount=0;
intnRet=WaitData(nCount,pData);
//等待一条或多条数据时返回,没有数据就等待。
switch(nRet)
-1.异常continue;
0.成功获取数据pData[0]、pData[1]、……
1.结束/停止(其他地方调用Stop停止)Return;
}
FreeData(pData);
FreeData
释放数据内存接口,对应WaitData函数
intnCount要释放的元素数量,char**要释放的数据
5、FreeData(intnCount,char**pData);
Stop
停止监控,监控规则失效
6、boolStop();
UnInit
程序退出
7、UnInit();
二、文件检查模块
/*********************接口说明***************************
//创建文件检查实例
void(*PCreateFileCheckerObject)(IFileChecker**pObject);
//释放文件检查实例
void(*PReleaseFileCheckerObject)(IFileChecker**pObject);
多规则多种关键字组合,则创建多个实例
-----------------------IFileChecker--------------------------
//初始化
voidInit(constchar*pName,constchar*pKeyWords);
pName:
实例名称随意。
但多个实例并行时不能重复;
pKeyWords:
关键词组。
格式:
"
机密;
秘密;
绝密;
//结束调用
voidUnInit();
//获取文件信息
boolGetFileInfo(constchar*pFilePath,TipsFileBlock*pTFB);
pFilePath:
文件路径
pTFB:
返回数据结构
//释放文件信息
voidFreeFileInfo(TipsFileBlock*pTFB);
需要释放的数据结构
//停止当前的文件检查
voidStopCheck();
*************************************************************/
//------------------------------(.h)头文件如下-----------------------------
#pragmaonce
structTipsFileBlock
char*pKeyWords;
//关键字
char*pSecretLevel;
//密级:
秘密、机密、绝密中的一个
char*pFileBlock;
//片段
};
classIFileChecker
public:
virtualvoidInit(constchar*pKeyWords)=0;
virtualboolGetFileInfo(constchar*pFilePath,TipsFileBlock*pTFB)=0;
virtualvoidFreeFileInfo(TipsFileBlock*pTFB)=0;
virtualvoidUnInit()=0;
virtualvoidStopCheck()=0;
typedefvoid(*PCreateFileCheckerObject)(IFileChecker**pObject);
typedefvoid(*PReleaseFileCheckerObject)(IFileChecker**pObject);
//------------------------------头文件end-----------------------------
//示例
//--------------获取接口类-----------------
HMODULEhDll=LoadLibrary(_T("
TipsFileChecker.dll"
));
if(NULL==hDll)return;
PCreateFileCheckerObjectpCreateFileChecker=(PCreateFileCheckerObject)GetProcAddress(hDll,"
CreateFileCheckerObject"
);
PReleaseFileCheckerObjectpReleaseFileChecker=(PReleaseFileCheckerObject)GetProcAddress(hDll,"
ReleaseFileCheckerObject"
if(NULL==pCreateFileChecker||NULL==pReleaseFileChecker)return;
IFileChecker*pFileChecker=NULL;
pCreateFileChecker(&
pFileChecker);
//---------------初始化提供关键字------------
CStringAstrName="
FeiMi1"
;
//多个实例名称任意,但不同。
例如:
FeiMi2、FeiMi3、…
CStringAstrKeyWords="
"
pFileChecker->
Init(strName,strKeyWords);
//----------------文件命中片段提取---------
CStringAstrFilePath="
C:
\\123.docx"
TipsFileBlockfb;
GetFileInfo(strFilePath,&
fb);
//....
FreeFileInfo(&
//----------------------结束释放----------------
StopCheck();
UnInit();
pReleaseFileChecker(&
FreeLibrary(hDll);
三、附
附1:
规则XML:
<
TipsTCM>
TipsTypeType="
Rule"
>
Rule>
NetOperIsMon="
1"
Type="
上传;
下载;
MonFileType="
txt;
doc;
MonProcess="
qq.exe;
explorer.exe;
WhiteProcess="
wps.exe;
IsBan="
0"
NetContentIsMon="
FileNameWords="
ContentWords="
MonFileType="
word.exe;
/Rule>
/TipsType>
/TipsTCM>
解释:
TipsTypeType="
为规则xml
IsMon:
是否监控1监控0不监控
MonPath:
监控文件夹,采用分号拼接,如果为空表示全盘监控
MonFileType:
监控文件类型,采用分号拼接,如果为空表示不限类型
IsBan:
是否拦截1拦截0不拦截
FileNameWords:
文件名检查关键字,如果为空表示不检查
ContentWords:
文件内容检查关键字,如果为空表示不检查
WhiteProcess:
进程白名单
WhitePath:
监控路径白名单
MonProcess:
监控进程,如果为空表示全部监控
附2:
结果XML:
NET操作行为监控举例:
Result"
TipsResultType="
NetOper"
ResultFilePath="
c:
\1.txt"
Process="
explorer.exe"
OperType="
上传"
FileType="
txt"
/>
/TipsResult>
下载"
Net内容监控举例:
TipsResultType="
NetContent"
Keyword="
秘密"
Content="
这是一个秘密文档"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口 设计方案
![提示](https://static.bdocx.com/images/bang_tan.gif)