📄 commpublicdll.h
字号:
/*********************************************************************************************************************
* 工程: CommPublic.dll
* 作者: 陈可到
* 描述: 函数命名风格为所有通用函数前加Pub标识,
* 版本:
**********************************************************************************************************************/
#ifndef _COMM_PUBLIC_DLL_H
#define _COMM_PUBLIC_DLL_H
#include <winsock.h>
#ifndef COMM_PUBLIC_DLL //输入输出宏定义
#define COMM_PUBLIC_DLL __declspec(dllimport)
#endif
/*************Function by hlittle*********************/
#define MSG_SEND_PROGRESS WM_USER+201
#define MSG_RECV_PROGRESS WM_USER+202
#define MSG_RECV_PROGRESS_1 WM_USER+203
#define MAX_UDP_SIZE 1024*64
#define UNIT_K 1024
#define DOT ","
#define IPBYTENUM 4 // ipv4
#define TEXT_SIZE_8 8
#define TEXT_SIZE_16 16
#define TEXT_SIZE_32 32
#define TEXT_SIZE_64 64
#define TEXT_SIZE_128 128
#define TEXT_SIZE_256 256
#define MAX_SAVE_BLOCK_NUM 200
#define MON_DELAY_TIME 3000
#define DECAP_DELAY_TIME 300
#define SOCKET_TIME_OUT 4000 // 码率最小为 20kbps
#define MON_BLOCK_SPACE 7
#define BS_TIMER_DELAY 1
#define PROFILE_BITRATE 8 //UNIT kbp/s
/**********************Bserver Returen Result**********************/
#define EXEC_FAIL 0
#define EXEC_OK 1
#define BS_FAIL 0
#define BS_OK 1
#define CLOSETHREADCODE 0xFFFFFFFF
#define INVALID_VALUE -1
#define INVALID_STRING "####"
typedef enum _tag_Stream_Status{
S_S_Idle=0,
S_S_Inited=1,
S_S_Loaded=2,
S_S_Running=3,
S_S_Paused=4,
S_S_Stoped=5,
S_S_Closed=6,
S_S_Recving=7,
S_S_Waitting=8,
S_S_Reading=9,
S_S_Error=-1,
S_S_Error1=-2,
// file map status
S_S_Alloced=-3,
S_S_ToFreeMapping=-4,
S_S_FreeMaped=-5,
S_S_FreeAll=-6,
}Stream_Status,ServerStatus;
//=================================================================================================================//
// 函数名: PubGetDiskFreeSpaceSize()
// 功能: 返回磁盘的空间
// 参数: *szname, lptotalsize, lpfreesize
// (入口) szname: 磁盘路径 ;"c:\\"
// lptotalsize: 磁盘总容量
// lpfreesize :磁盘剩余空间
// 返回: 创建文件成功返回TRUE, 否则返回FALSE
// 调用方法:
// 作者及日期: 2003-1-9 11:34:53 By Hlittle
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL BOOL PubGetDiskFreeSpaceSize(char *szname,LPDWORD lptotalsize,
LPDWORD lpfreesize);
//=================================================================================================================//
// 函数名: PubCreateFile()
// 功能: 产生指定长度的文件
// 参数: szFileName, lFileLen
// (入口) szFileNmae: 要创建的文件名(若不指定路径, 则默认为当前路径)
// lFileLen: 文件长度
// 返回: 创建文件成功返回TRUE, 否则返回FALSE
// 调用方法:
// 作者及日期: 2002-12-30 11:10:53 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL BOOL PubCreateFile(const char* szFileName,long lFileLen);
//=================================================================================================================//
// 函数名: PubCloseFile()
// 功能: 关闭文件
// 参数: fp, 要关闭的文件句柄
// 返回: 无返回值, 执行完函数后fp的值为NULL
// 调用方法:
// 作者及日期: 2002-12-30 13:03:10 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL void PubCloseFile(FILE*& fp);
//=================================================================================================================//
// 函数名: PubPreparePath()
// 功能: 准备磁盘路径
// 参数: szPath
// 返回: 成功返回TRUE, 否则返回FALSE
// 调用方法:
// 作者及日期: 2002-12-30 13:05:38 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL BOOL PubPreparePath(const char* szPath);
//=================================================================================================================//
// 函数名: PubPathIsExisted()
// 功能: 判断目录是否存在
// 参数: szPath
// (入口) szPath: 要判断的路径
// 返回: 如果路径存在则返回TRUE, 否则返回FALSE
// 调用方法:
// 作者及日期: 2002-12-30 13:29:04 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL BOOL PubPathIsExisted(const char * szPath);
//=================================================================================================================//
// 函数名: PubReSubString()
// 功能: 分割字符串 例szParent="xyzabc123", szSplitCode="b" 则执行函数后szParent="xyza", szChild="c123"
// 参数: szParent, szChild, szSplitCode
// (入口) szSplitCode:
// (出口) szChild:
// (入口出口) szParent:
// 返回: 无
// 调用方法:
// 作者及日期: 2002-12-30 13:37:55 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL void PubReSubString(char* szParent, char* szChild, const char* szSplitCode);
//=================================================================================================================//
// 函数名: PubSwapToDotString()
// 功能: 如果nInValue=1024*1024*23, 则执行函数后szOut的值为23,000,000
// 参数: szOut, nInValue
// (入口) nInValue:
// (出口) szOut:
// 返回: 返回值同szOut
// 调用方法:
// 作者及日期: 2002-12-30 15:29:12 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL char* PubSwapToDotString(char* szOut, int nInValue);
//=================================================================================================================//
// 函数名: PubGetFileName()
// 功能: 获得文件的名称
// 参数: szFullPathName, szFileName
// (入口) szFullPathName: 全路径文件名
// (出口) szFileName: 不带路径的文件名称
// 返回: 返回文件名称
// 调用方法:
// 作者及日期: 2002-12-30 14:12:35 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL char* PubGetFileName(const char* szFullPathName,char* szFileName);
//=================================================================================================================//
// 函数名: PubGetFileLen()
// 功能: 得到文件长度
// 参数: szFile
// (入口) szFile: 带路径的文件名称, 若不带路径则默认为当前路径
// 返回: 返回文件长度
// 调用方法:
// 作者及日期: 2002-12-30 14:29:37 By 陈可到
// 修改者及日期:
//=================================================================================================================//
COMM_PUBLIC_DLL long PubGetFileLen(const char* szFile) ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -