📄 database.h
字号:
// DataBase.h: interface for the CDataBase class.
//
//////////////////////////////////////////////////////////////////////
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
#if !defined(AFX_DATABASE_H__9957E444_F2F0_4560_80C1_FC13298AD0FD__INCLUDED_)
#define AFX_DATABASE_H__9957E444_F2F0_4560_80C1_FC13298AD0FD__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <afxtempl.h>
#include "DataBase.h"
#include "global.h"
/*
struct FileInfo //文件信息,上传共享资源时文件的详细信息
{
byte fileID[20]; //文件ID
char fileName[50]; //文件名
unsigned short fileType; //文件类型
DWORD fileSize; //文件大小
char keyWord[20]; //关键词
byte keyID[20]; //关键词ID
char remark[100]; //备注
// byte peerID[20];
};
struct PeerItem{ //节点信息,返回给用户结点链表时用
char IP[20]; //节点IP
unsigned short Port; //节点端口
};
struct FileItem //文件信息,查询时返回给用户文件链表时用
{
byte fileID[20]; //文件ID
char fileName[50]; //文件名
unsigned short fileType; //文件类型
DWORD fileSize; //文件大小
char remark[100]; //备注
};
struct PeerInfo{ //节点信息,向数据库中插入时用
byte pID[20]; //节点ID
char IP[20]; //节点IP
unsigned short Port; //节点端口
};
typedef CList<PeerItem,PeerItem&> CPeerList; //返回给用户的结点链表
typedef CList<PeerInfo,PeerInfo&> CPeerInfoList; //完整节点信息的链表,用于数据库操作等
typedef CList<FileItem,FileItem&> CFileList; //返沪给用户的文件链表
typedef CList<FileInfo,FileInfo&> CFileInfoList; //完整的文件信息链表,用于数据库操作等
*/
class CDataBase
{
public:
BOOL InquiryPIDtrust(CString ip,PeerIDtrust *ptrust);
BOOL AddVirusInfo(VirusInfo vInfo);
CString CountVirusValue(char *fileid);
BOOL UpdataTrustValue(CString pid,int trustvalue);
int InquiryTrustValue(CString pid);
CString VariantToCString(VARIANT var);
BOOL UpdataPubPriKey(char *pID,char *pubkey,char *prikey);
BOOL DelPubPriKey(char *pID);
CString InquiryPrikey(char *pID);
CString InquiryPubkey(char *pID);
BOOL AddCipherKey(char *pID,char *pubkey,char *prikey);
int HexToInt(char c);
void IDStrToByte(byte *id, CString strID);
BOOL CloseDataBase();
BOOL SetStatus_0(char *pID);
int CountAllOnlinePeer();
int CountAllRegPeer();
BOOL SearchPidIsExist(CString pID);
BOOL SetStatus_1(char *pID);
BOOL AddFidPid(char *fID,char *pID);
BOOL SearchFilePeerIsExist(CString pID);
BOOL SearchFileIDIsExist(char *fileID);
//CString SearchPeerIsExist(CString IP);
char* SearchPeerIsExist(CString IP);
BOOL DeletePeerFile(char *pID);
BOOL GetPeerInfo(char *PeerID,PeerItem peer);
void CopyArray(byte btobj[], byte btorigin[]);
char IntToChar(int n);
CString IDByteToStr(byte *bID);
BOOL DeletePeer(char *peerID);
BOOL DeleteFile(char *fileID);
BOOL UpdatePeer(PeerInfo peer);
BOOL UpdateFile(FileInfo file);
BOOL Excute(CString sql);
BOOL OpenDataBase();
BOOL InitDataBase();
BOOL SearchFilePeer(char *fileID,CPeerList& PeerList);
BOOL SearchKeyword(char *keyID,CFileList& fileList);
BOOL AddPeerInfo(char *pID,char *IP);
BOOL AddFileRecord(EDSFileInfo file,char *pID);
CDataBase();
virtual ~CDataBase();
CString g_DataBaseID;//="driver={SQL Server};Server=127.0.0.1;DATABASE=Swit1;UID=sa;PWD=123";
_RecordsetPtr m_pRecordset;
_ConnectionPtr m_pConnection;
};
#endif // !defined(AFX_DATABASE_H__9957E444_F2F0_4560_80C1_FC13298AD0FD__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -