模拟COM组件

com是为了让所有的语言都可以设计组件,不同的组件可以互相调用,所以需要一个统一接口去查询组件的接口有哪些,怎么区分 不同的组件的接口,通过一个CUID(GUID 全球唯一标识符)去查询,这样就不会有冲突,这是由实现组件的作者提供 接口不能放数据成员,方便以后扩展更新 统一返回值 统一错误方式,方...

2019-09-14 02:10:06

阅读数 6

评论数 0

DLL模式设计插件

接口不变原则(接口顺序不变,接口只能增加,不能删除之类的操作) 1.插件框架设计步骤: 1)设计标准统一的插件接口 2)遍历dll(插件) 3)获取每个dll导出函数(动态加载的话(LoadLibrary)可以达到程序启动就可以使用多个插件,即插即用的效果,如果用静态加载(#pragma comm...

2019-09-08 00:11:08

阅读数 8

评论数 0

mysql数据库一些基本的api操作

使用mysql接口操作数据库 如果是32位程序用已经编译好的库的话就去下载低版本的库 官网下载地址:http://ftp.nchu.edu.tw/MySQL/downloads/connector/c/index.html#downloads 1包含mysql提供的头文件mysql....

2019-09-05 00:30:51

阅读数 10

评论数 0

数据库是sql语句

Sql语句 #创建数据库 CREATE DATABASE student; #删除数据库 drop database student; #创建表 use student; #写了这个就不需要指明在哪个数据库创建表如student.t_class #创建主键字段 create t...

2019-09-05 00:24:15

阅读数 8

评论数 0

数据库的设计和介绍

关系的实现是用转换规则把E-R图转换成表。 ●对于实体,把实体名转换为关系表名,把实体中的属性转换成表中的字段。 ●对于实体间的关系,把实体关系名转换为关系表名,把相关实体的主键和关系属性转换成表中的字段。 ●把具有相同主键的表合并 数据库的三种关系的设计方案 1、一对一的关系 合...

2019-09-04 23:57:55

阅读数 8

评论数 0

HTTP和HTTPS简介

http:超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,基于TCP之上,是一个标准协议 https:是http的安全版本,而安全是用ssl协议(http+ssl) 具体http协议可以自行查,一般都很详细 我的https协议中ssl层用的是op...

2019-08-25 22:35:59

阅读数 5

评论数 0

windows下简单线程池实现

CreatSemaphore.h #pragma once #include<windows.h> class CCreatSemaphore { public: //创建信号量 CCreatSemaphore( LONG lInit...

2019-08-25 21:20:19

阅读数 4

评论数 0

MFC中的消息映射

MFC中消息处理是封装好的,他会根据消息是调用对应的对象的处理函数,而MFC是怎么做到的呢? MFC是会自己建一张消息映射表,而自己分发消息就得先获取消息了,这就用到了HOOK了,这样获取到消息后,自己就可以对照MFC中的消息映射表去执行对应的对象的处理函数 MFC消息映射机制执行步骤是:当消...

2019-08-24 17:08:48

阅读数 16

评论数 0

MFC序列化

序列化:把对象信息保存到存储区(如把对象信息写到文件) 反序列化:从存储区中读取对象并创建对象(从文件中读取对象信息并创建对象) MFC序列化使用步骤 将所要序列化的类先继承CObject 类中重写虚函数void Serialize(CArchive& archive) ...

2019-08-22 19:04:43

阅读数 19

评论数 0

Windows中的select网络模型

网络模型是为了更好的利用资源,优化服务器 因为一个连接产生一个socket,所以维护大量的客户端必须得用多线程处理不同的客户端,而用以前的一个客户端创建一个线程去维护处理又会有新问题 线程最大是一个2个字节的数量(65535),如果超过的话这种就处理不了,所以就希望一个线程处理多个客户端,所以可...

2019-08-20 00:45:36

阅读数 9

评论数 0

MFC中的RTTI(运行时类型检查)和动态创建

RTTI概念 百度百科:通过运行时类型信息程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型 MFC中RTTI源码实现 MFC是通过两个宏实现的 #define DECLARE_DYNAMIC(class_name) //声明宏 #define IMPLEMENT_...

2019-08-19 23:11:54

阅读数 10

评论数 0

原始socket例子

ICMP实现例子 // ICMP.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <WinSock2.h> #include <tchar.h> #inclu...

2019-08-08 12:31:25

阅读数 12

评论数 0

UDP协议实现聊天功能例子

UDP服务端 协议 #pragma once #define _CRT_SECURE_NO_WARNINGS #include <WinSock2.h> enum CHAT_COMMAND { CHAT_LOGIN, //登录 CHAT_AC...

2019-08-07 12:55:57

阅读数 16

评论数 0

基于TCP协议实现简单的远程控制

服务端代码实现 protocol.h #pragma once #include <windows.h> enum COMMAND { CMD_SCREEN,//截图 CMD_WM_MOUSEMOVE,//鼠标移动 CMD_WM_LBUTTONDOWN...

2019-08-07 12:44:20

阅读数 16

评论数 0

windows平台下socket编程相关TCP和UDP的介绍

TCP的会产生三次握手和四次挥手,这在我的原来的博客中也描述过就不多描述了 TCP/UDP位于传输层 传输层:主要负责不同主机间进程之间的通信服务。 端口:计算机进程的标识序号,用于提供不同主机之间通信服务的标识 0 ~ 1023称为系统端口号 1024 ~ 49151称为用户端口号 ...

2019-08-07 02:17:53

阅读数 15

评论数 0

网络的七层和四层协议简介

TCP/IP层次结构 TCP/IP协议封装层次 TCP/IP协议族按照层次由上到下,层层包装。最上面的是应用层,这里面有http,ftp,等等我们熟悉的协议。而第二层则是传输层,著名的TCP和UDP协议就在这个层次。第三层是网络层,IP协议就在这里,它负责对数据加上IP地址和其他的数据...

2019-08-07 00:17:20

阅读数 18

评论数 0

windows钩子函数

钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递 相关API SetWindowsHook...

2019-07-27 02:01:54

阅读数 11

评论数 0

windows远程线程注入

概念 远程线程:另一个进程中的线程。 注入:别的进程中执行自己的代码 远程线程注入:指一个进程在另一个进程中创建线程的技术 设计思路 在DLL的dllmain里写自己的代码,通过远程创建线程,利用系统共享库(系统dll是所有进程共享)的函数动态加载自己的DLL,来运行自己的代码,系统dll...

2019-07-27 01:47:13

阅读数 15

评论数 0

windwos线程同步的几种方式

大家都知道开多线程的的目的是为了提高程序的处理效率,但是多线程会存在访问同一个资源会出现数据混乱,当然多个线程只读这一个共享资源肯定是没有问题的,但是修改的话肯定会有问题,所以需要同步的概念windows提供了多个同步对象 同步模式有两种: 1三环(用户模式):原子操作, 关键段 2内...

2019-07-27 01:21:11

阅读数 18

评论数 0

windwos跨进程使用句柄

windows是通过句柄对进程中的各种内核对象进行引用。实际上windows句柄就是一个索引,索引对应对象的地址,拿到地址就可以获取对象本身了 句柄表存放的三个值 1句柄是否有继承权限2句柄(索引)3对象的地址 110x11111111 跨进...

2019-07-26 23:37:50

阅读数 16

评论数 0

提示
确定要删除当前文章?
取消 删除