📄 mycommpublic.cpp
字号:
#include "stdafx.h"
#include "myCommPublic.h"
#include "math.h"
HWND g_hMonWnd=NULL;
void ReSubString(char *pParentString,char *pChildString,char * strSplitCode)
{
int nPos,nlen;
/********Get the child string **/
nPos=strcspn(pParentString,strSplitCode);
memcpy(pChildString,pParentString,nPos);
pChildString[nPos]='\0';
nlen=strcspn(pParentString,"\0");
if(nlen!=nPos){
memcpy(pParentString,pParentString+nPos+1,nlen-nPos-1);
pParentString[nlen-nPos-1]='\0';
}
else{
pParentString[0]='\0';
}
return ;
}
void SetAddress(char* strAddress,CIPAddressCtrl* pAddCtrl){
//DWORD dwIP;
char szString[64],szBuffer[32];
DWORD dwIPFields[IPBYTENUM];
sprintf(szString,"%s",strAddress);
for(int i=0;i<IPBYTENUM;i++){
ReSubString(szString,szBuffer,".");
dwIPFields[i]=atoi(szBuffer);
}
pAddCtrl->SetAddress(dwIPFields[0],dwIPFields[1],
dwIPFields[2],dwIPFields[3]);
}
void GetAddress(char *pout,CIPAddressCtrl* pAddCtrl)
{
// CString strIP;
DWORD dwIP;
struct in_addr m_add;
pAddCtrl->GetAddress(dwIP);
m_add.s_addr = htonl(dwIP);
sprintf(pout,"%s",inet_ntoa(m_add));
//return strIP;
}
void InitListCtrl(CListCtrl * pList,char *pszDesc[],
long lColumnWidth[],int nColumnNum)
{
for(int i=0;i<nColumnNum;i++){
pList->InsertColumn(i,pszDesc[i],LVCFMT_LEFT,lColumnWidth[i],-1);
}
}
int _ReadLine(FILE *fp,char pBuffer[]){
int nRet=0;
char c;
while(!feof(fp)){
if((c=fgetc(fp))!='\n') // To a newline
pBuffer[nRet++]=c;
else
break;
} // end while
pBuffer[nRet]='\0'; //Add String ending symbol
return nRet;
}
void CloseSokcet_(SOCKET s){
if(s!=INVALID_SOCKET)
closesocket(s);
s=INVALID_SOCKET;
}
void CloseHandle_(HANDLE handle){
if(handle!=NULL)
CloseHandle(handle);
handle=NULL;
}
void SwapBstrToString(BSTR *pbstr,char *pOut)
{
if(SysStringLen(*pbstr)>0)
{
_bstr_t var(*pbstr,true);
char *strResult=var;
sprintf(pOut,"%s",strResult);}
else
sprintf(pOut," ");
}
void SwapStringToBstr(char *pin,BSTR *pbstrOut){
if(strlen(pin)>0)
{_bstr_t var(pin);
*pbstrOut=SysAllocString(var.copy());
}
}
BOOL InitWSA(){
WORD wVersionRequested = MAKEWORD(2,0);
WSADATA wsaData;
int nRet;
nRet = WSAStartup(wVersionRequested,&wsaData);
if (nRet!=0){
AfxMessageBox("eRROR");
return FALSE;
}
return TRUE;
}
void EndWSA(){
WSACleanup();
}
BOOL BitRateIsValid(DWORD dwPreTime,DWORD dwBitrate,DWORD dwPos){
if (((float)dwBitrate/8/1000)*(timeGetTime()-dwPreTime)>(float)dwPos)
return TRUE;
else
{ //TRACE("spant=%d pos=%d bit=%d\n",timeGetTime()-dwPreTime,dwPos,nBitrate);
return FALSE;}
}
DWORD GetBitrate(DWORD dwSpanTime,DWORD dwDataSize){
DWORD dwBitrate;
dwBitrate=(int)(((float)dwDataSize*8*1000)/dwSpanTime);
return dwBitrate;
}
void SwapToDotString(char *poutstr,long nInValue){
double d1,dRet;
d1=nInValue;
CString str1,str2;
while(1){
dRet=fmod(d1,UNIT_K);
//str2.Format("%s%3f%s",DOT,(int)dRet,str1);
if(d1<999)
str2.Format("%s%d%s",DOT,(int)dRet,str1);
else if(dRet>=100)
str2.Format("%s%d%s",DOT,(int)dRet,str1);
else if(dRet>=10)
str2.Format("%s0%d%s",DOT,(int)dRet,str1);
else
str2.Format("%s00%d%s",DOT,(int)dRet,str1);
str1=str2;
d1=(int)d1/UNIT_K;
if(d1==0)
break;
}
sprintf(poutstr,"%s",str1.Right(str1.GetLength()-1));
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -