
Windows系统编程
文章平均质量分 69
记录了Windows下的系统网络编程
叙白大人
这个作者很懒,什么都没留下…
展开
-
服务控制管理器
在Windows操作系统中,服务控制管理器(Service Control Manager,SCM)是一个核心组件,用于管理本地和远程计算机上的服务。它提供了一个接口,允许其他程序(如服务控制面板、服务安装程序等)来启动、停止、暂停、恢复和查询服务。在这个示例中,我们尝试打开本地计算机的服务控制管理器,并检查是否成功。如果失败,我们输出错误代码。最后,我们关闭服务控制管理器的句柄。函数成功执行,它将返回一个服务控制管理器的句柄(在C++中,可以使用Windows API函数。来打开服务控制管理器。原创 2024-10-22 20:08:20 · 482 阅读 · 0 评论 -
Windows下的多线程
CreateThread 是一种微软在 Windows API 中提供了建立新的线程的函数,该函数在主线程的基础上创建一个新线程。线程终止运行后,线程对象仍然在系统中,必须通过CloseHandle 函数来关闭该线程对象。常见的内核对象 : 进程、线程、文件,存取符号对象、事件对象、文件对象、作业对象、互斥对象、管道对象、等待计时器对象,邮件槽对象,信号对象。调用创建内核对象的函数后,该函数会返回一个句柄,它标识了所创建的对象。标识系统中的哪个线程当前拥有互斥对象,计数器用于指明该线程拥有互斥对象的。原创 2024-08-11 18:35:14 · 1057 阅读 · 0 评论 -
Windows内核对象,句柄,信号量和关键代码段
这时,进程退出只会减少当前进程对引用的所有内核对象的使用计数,而不会减少其他进程对内核对象的使用计数(即使该内核对象由当前进程创建)。内核对象 A,B 的引用计数减为 0,被操作系统内核销毁,而进程 1只减少自身对 C,D 的引用计数,不会影响进程 2 对 C,D 的引用计数,此时 C,D 引用计数不为 0,不会被销毁。就是相当于操作系统多了一个内存块,这个内存块就是内核对象也是此时内核对象被创建,其数据结构中的引用计数初始为 1(这样理解:只要内核对象被创建,其引用计数被初始化为 1)原创 2024-08-11 18:30:52 · 825 阅读 · 0 评论 -
TLS--线程本地存储
线程局部存储(TLS),是一种变量的存储方法,这个变量在它所在的线程内是全局可访问的,但是不能被其他线程访问到,这样就保持了数据的线程独立性。原创 2024-07-25 22:02:04 · 387 阅读 · 0 评论 -
WIN下的文件截获
相当于指针,用来表示windows下的一些对象;windows下的路径数据变量;原创 2024-07-29 16:30:17 · 201 阅读 · 0 评论 -
Windows下的TCP和UDP网络编程
可以读写内核没有处理的ip数据报,可以直接传输给需要的应用程序。最大监听数目,执行到listen,未执行到accept。sockaddr_in是面向程序员的使用的。该部可以接受连接放到队列,但是不会处理数据。sockaddr是面向操作系统的使用的。10061–计算机拒绝访问(端口问题)需要引入头文件winsock2.h。传输的的数据可能丢失,也可能损毁。可以通过返回的错误编码去查找错误。10060–ip地址错误。传输过程中数据不会丢失。强调快速传输而非顺序。第6个客户端无法连接。原创 2024-07-28 18:06:20 · 627 阅读 · 0 评论