摘要:很早的东西,最先发的地方http://blog.sina.com.cn/s/blog_65127e430100qn0q.html;突然又用到,再转回过来实习期间,因老师对学生常常退出客户端,使得老师无法对学生进行管理,就写了个程序,下面是部分代码,总体的思路是,判断学生端进程是否存在,如果不存在,对其主机进行关机操作。其实我还加了另一部分,把原来的学生端的进程改成了smms.exe,使得部分学生不知道哪个是客户端,其实大部分利用的还是木马捆绑的原理。#include "stdafx.h"#include "Tlhelp32.h"#include <
阅读全文
摘要:先上图未连接连接后学着黑防的远控写着,慢慢改成自己所想要的形式。记录下远近软件设计思路: 传输命令结构typedef struct {int ID; //表示执行命令 可用#define ... 0x..定义BYTE lparam[2048];}COMMAND;列举几个功能的实现思路: 1.执行文件步骤: 客户端:传送COMMAND结构,ID为定义的可执行id,lparam参数表示文件在目标机器上的绝对路径 服务端:监听并接收处理到ID为执行文件标志时,跳到相应的执行函数,取出lparam参数表示的绝对路径,得取进程的执行权限执行函数。 2.远程关机、注销、重启 客户端:发送COMM...
阅读全文
摘要:在程序调试过程中发现,有一个程序一直死循环在文件的读取中。http://tuhao.blogbus.com/logs/21306687.html从这边文章了解到了相关信息主要在于eof()不只是读取文件的最后一个字符,它会接着往后读取,如果此函数返回ture时,则此时返回的文件结束符0xFF才是真正的结尾。具体内容如下:在使用C/C++读文件的时候,一定都使用过eof()这个函数来判断文件是否为空或者是否读到文件结尾了,也会在使用这个函数的过程中遇到一些问题,如不能准确的判断是否为空或者是否到了文件尾,以至于有些人可能还会怀疑这个函数是不是本身在设计上就有问题。先来看看如下这段代码:#incl
阅读全文
摘要:PostQueuedCompletionStatus功能函数向一个已经初始完的I/O端口发送数据包,触发GetQueuedCompletionStatus功能调用函数来取得数据包BOOL PostQueuedCompletionStatus(HANDLE CompletionPort, // handle to an I/O completion port DWORDdwNumberOfBytesTransferred, // value to return via GetQueuedCompletionStatus' lpNumberOfBytesTranferred DWORD d
阅读全文
摘要:软件出现此异常,虽然可以正常运行,但正常运行并不代表可以运行成功。对其进行跟踪发现,是在调用GetMessage() 的时候才会发生这种异常,在百度百了好久也没早到个解决方法,还是谷歌给力。原来是wchar_t类型不被支持以下为原文:I used the recommended Delegation model of the C++ SDK. I encountered an undocumented exception.Unhandled exception at 0x7c812afb in TestAdpCpp.exe: Microsoft C++ exception: com::in..
阅读全文
摘要:(1)对象模型 1.简单对象类型 2.表驱动对象模型 3.实现模型 C++采用实现模型: nostatic data member 被放置在对象内部,Static data members, Static and nonstatic function members 均被放到对象之外。 对于虚函数的支持则分两步完成: 1.为每个类生成了一个虚函数表。 2.指向相关虚表的指针被插入到每个对象中。 优点:访问和空间效率提高 缺点:如果应用程序本身未改变,但当所使用的类的non static 数据成员添加删除修改的时候,需要重新编译。 (2)struct 与 class struct 默认publ.
阅读全文
摘要:void CTableFrameSink::OnCharLogic(){if (m_iGameCount>=30) //当局数大于30局的时候全部清空{memset(&m_GameChart,0,sizeof(m_GameChart));m_iGameCount = 0;m_iBigEyeCount = 0;m_iSmallCount = 0;m_iCockCount = 0;}BYTE bZhuangCount,bXianCount;//计算牌点bZhuangCount= m_cGameLogic.GetCardListPip(m_cbTableCardArray[INDEX_
阅读全文
摘要:1.CRuntimeClass DECARE_DYNAMIC()CRuntimeClass没有基类。 每个由CObject派生的类都与一个CRuntimeClass结构相联系,用户可以使用该结构获取一个对象及其基类的运行时信息。当需要额外的函数参数检查时,或当用户必须根据一个对象的类编写特殊目的代码时,在运行时确定该对象的类就非常有用。C++并不直接支持运行时类的信息。struct CRuntimeClass{// AttributesLPCSTR m_lpszClassName; //存放asscii类名的以空字符结尾的字符串int m_nObjectSize; //以字节为单位给出对象的大
阅读全文