• 大小: 12.81MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-27
  • 语言: C/C++
  • 标签: 进程  MD5  

资源简介

本程序在MFC环境下编写的,获取了进程的详细信息,包括进程ID、进程路径、进程的描述、进程占用的内存信息、进程包含的线程数、进程文件的路径和MD5码,以及进程包含的模块的详细信息。

资源截图

代码片段和文件信息

/////////////////////////////////////////////////////////////////////
//md5.cpp
/////
#include “StdAfx.h“
#include “md5.h“
#include 
#include 


const ULONG CMd5::Context[4]={  0x67452301
                                0xefcdab89
                                0x98badcfe
                                0x10325476
};
/*
const ULONG CMd5::Context[4]=  {0X01234567
0X89abcdef
0Xfedcba98
0X76543210
};*/
const LPSTR CMd5::ErrInfo[5][2]={
{““““}
{“The Memory is not enough !““内存分配失败!“}
{“Have not assign a file !““未指定文件!“}
{“Have not assign the text !““未指定文本!“}
{“Have something wrong with MD5!““有错误发生!“}
};
//==========================<内联函数实现>=========================================

ULONG CMd5::LRotate(ULONG Sdataint nBit)
{
return (Sdata<>(32-nBit));
}
ULONG CMd5::F(ULONG xULONG yULONG z)
{
return (x&y)|((~x)&z);
}
ULONG CMd5::G(ULONG xULONG yULONG z)
{
return (x&z)|(y&(~z));
}
ULONG CMd5::H(ULONG xULONG yULONG z)
{
return x^y^z;
}
ULONG CMd5::I(ULONG xULONG yULONG z)
{
return y^(x|(~z));
}
void CMd5::FF(ULONG &aULONG bULONG cULONG dULONG Msgint nBitULONG Cnt)
{
a+=F(bcd)+Msg+(ULONG)Cnt;
a=LRotate(anBit);
a+=b;
}
void CMd5::GG(ULONG &aULONG bULONG cULONG dULONG Msgint nBitULONG Cnt)
{
a+=G(bcd)+Msg+(ULONG)Cnt;
a=LRotate(anBit);
a+=b;
}
void CMd5::HH(ULONG &aULONG bULONG cULONG dULONG Msgint nBitULONG Cnt)
{
a+=H(bcd)+Msg+(ULONG)Cnt;
a=LRotate(anBit);
a+=b;
}
void CMd5::II(ULONG &aULONG bULONG cULONG dULONG Msgint nBitULONG Cnt)
{
a+=I(bcd)+Msg+(ULONG)Cnt;
a=LRotate(anBit);
a+=b;
}
//==========================<成员函数实现>======================================

CMd5::CMd5()
{
 IsSuc=false;
 Pointer=NULL;
 memset(strErr050);
}
CMd5::CMd5(wchar_t *filename)
{
IsSuc=false;
Pointer=NULL;
memset(strErr050);
TargetFile(filename);
}
CMd5::~CMd5()
{
if(Sfile.is_open())Sfile.close();
if(Pointer){delete[]Pointer; Pointer=NULL;}
}
LPCTSTR CMd5::TargetFile(wchar_t *filename)
{
if(!Init())SetErr(1);
static wchar_t temp[MAX_PATH];
wcscpy(tempfname);
wcscpy(fnamefilename);
CaculateFile();
return temp;
}
void CMd5::TargetStr(LPCSTR str)
{
if(!Init())SetErr(1);
CaculateStr(str);
}
bool CMd5::Init()
{
*fname=‘\0‘;
IsSuc=true;
*Digest=‘\0‘;
try{
    Pointer=new BYTE[sizeof(ULONG)*16];
}
catch(bad_alloc w)
{   
Pointer=NULL;
        SetErr(1);
}
pM=(ULONG*)Pointer;
FileLen=0;
for(int i=0;i<4;i++)
        T[i]=Context[i];
return true;
}
bool CMd5::OpenFile()
{

Sfile.open(fnameios::in|ios::binary);
if(!Sfile)
{   
SetErr(0);
}
return true;
}
bool CMd5::Read64Byte()
{   static bool rb=true;
int n;
if(!Sfile.eof())
{
Sfile.read((char*)Pointersizeof(ULONG)*16);
FileLen+=n=Sfile.gcount();

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-12-19 09:54  processClient\
     目录           0  2011-12-19 09:54  processClient\debug\
     文件      159744  2011-11-19 20:05  processClient\debug\process.exe
     文件     1194732  2011-11-19 20:05  processClient\debug\process.ilk
     文件     3918848  2011-11-19 20:05  processClient\debug\process.pdb
     目录           0  2011-12-19 09:54  processClient\process\
     文件    16043008  2011-12-05 19:54  processClient\process.ncb
     文件         886  2011-11-16 08:53  processClient\process.sln
     文件       39424  2011-12-05 19:54  processClient\process.suo
     文件      389120  2011-11-22 10:42  processClient\processFile.mdb
     目录           0  2011-12-19 09:54  processClient\process\Debug\
     文件        8800  2011-09-27 23:52  processClient\process\md5.cpp
     文件        2274  2011-09-27 23:52  processClient\process\md5.h
     文件       59624  2011-11-29 17:39  processClient\process\process.aps
     文件        1942  2011-11-29 17:08  processClient\process\process.cpp
     文件         486  2011-11-22 16:53  processClient\process\process.h
     文件        5657  2011-11-29 17:39  processClient\process\process.rc
     文件        5589  2011-11-16 09:27  processClient\process\process.vcproj
     文件        1427  2011-12-05 19:54  processClient\process\process.vcproj.MICROSOF-623AF7.Administrator.user
     文件       22266  2011-12-05 19:30  processClient\process\processDlg.cpp
     文件        1613  2011-12-04 18:53  processClient\process\processDlg.h
     文件      389120  2011-11-29 19:00  processClient\process\processFile.mdb
     文件        2763  2011-11-16 08:53  processClient\process\ReadMe.txt
     目录           0  2011-12-19 09:54  processClient\process\Release\
     文件        7470  2011-12-05 19:30  processClient\process\Release\BuildLog.htm
     文件      568901  2011-11-29 17:17  processClient\process\Release\md5.obj
     文件      100581  2010-11-09 22:51  processClient\process\Release\msado15.tlh
     文件       77120  2010-11-09 22:51  processClient\process\Release\msado15.tli
     文件          67  2011-12-05 19:30  processClient\process\Release\mt.dep
     文件         874  2011-12-05 19:30  processClient\process\Release\process.exe.intermediate.manifest
     文件       21539  2011-12-04 18:54  processClient\process\Release\process.obj
............此处省略16个文件信息

评论

共有 条评论