上一页 1 2 3 4 5 6 ··· 24 下一页
摘要: 使用SVG/Path WPF支持绘图,在WPF中定义了一些基本图形,如Line、Rectangle、Ellipse、Path等 其中Path支持使用路径来进行绘图,所以大部分的图标可以通过Path来进行绘制。 因为本文主要是介绍矢量图标,所以不对绘图进行详细介绍,只介绍一些核心概念 Path的路径标 阅读全文
posted @ 2024-03-08 15:03 zhaotianff 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 1、如果是在Visual Studio里,直接切换分支即可。Visual Studio会自动把修改的文件带过来 2、使用git stage将要提交的内容暂存。 如 1 git stage xxx 切换分支后, 将暂存的文件恢复 1 git restore --staged xxx 再按正常提交即可 阅读全文
posted @ 2024-03-07 11:13 zhaotianff 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 在前面的文章中,https://www.cnblogs.com/zhaotianff/p/13860307.html 介绍 了如何删除git commit记录。 这种方法,可以还原commit,但是会删除commit记录。 如果我们需要保留commit 记录,又想还原某几次提交,可以尝试使用下面的方 阅读全文
posted @ 2024-02-21 14:27 zhaotianff 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 内存分配 在应用层编程时,系统提供了GlobalAlloc/HeapAlloc/LocalAlloc等函数。C/C++库提供了malloc函数,以及new操作符在堆上分配内存。 在我前面一个关于Windows页交换文件的博客中,介绍了虚拟内存, 虚拟内存是计算机系统内存管理的一种技术。它使得应用程序 阅读全文
posted @ 2024-02-02 15:04 zhaotianff 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 上下文环境 应用层应用程序工作在用户模式,内核驱动程序工作在内核模式。这里的用户模式和内核模式是基于CPU的特权环来定义的,CPU提供了0环~3环(ring 0 ~ ring 3)共四个特权环,Windows操作系统使用了其中的0环和3环,0环为内核模式,3环为用户模式。不同环之间的代码特权不同,访 阅读全文
posted @ 2024-01-30 10:34 zhaotianff 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 在前面的文章中,介绍了如何配置开发环境以及如何进行调试。 接下来的几篇文章,将会重点介绍内核编程中所需要了解的一些理论基础。 我写这个系列文章的主要目的是方便以后自己查阅,同时也给正在学习内核开发的小伙伴一些参考,所以我会尽可能地以最简单的方式进行描述。 如果在阅读过程中遇到不理解的地方,可以查阅书 阅读全文
posted @ 2024-01-27 13:51 zhaotianff 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 单步调试驱动 驱动的调试不能直接在本机上进行,而是要放在虚拟机(或其它设备)中。这是因为在内核模式下,一个断点的触发将会停下整个系统而不只是单个进程。 在前面的文章里,使用了DbgPrint函数来进行日志的输出,但这种方法不能进行单步调试。下面介绍两种调试方法。 基于Visual Studio的调试 阅读全文
posted @ 2024-01-26 22:35 zhaotianff 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 使用Visual Studio 2022创建一个Empty WDM Driver工程 工程创建后,添加一个MyFirstDriver.cpp文件,输入以下内容 1 #include<ntddk.h> 2 3 VOID DriverUnload(PDRIVER_OBJECT DriverObject) 阅读全文
posted @ 2024-01-26 22:31 zhaotianff 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 前言 以前在书上看到,说现在的安全软件已经将对抗转移到内核层了,深以为然。 因为像360安全卫士,腾讯电脑管家这样的安全软件,仅通过用户层api很难做到更高级的防御和控制。 早些年我想获取电脑硬盘的详细使用信息,像鲁大师那样,但是一番找寻下来,并未在网上搜到满意的答案,自己所学也有限,后面索性就放弃 阅读全文
posted @ 2024-01-23 16:26 zhaotianff 阅读(30) 评论(0) 推荐(0) 编辑
摘要: DUMP文件 转储文件(dump)是一个快照,其显示某个时间点正在为应用执行的进程和已为应用加载的模块。 带堆信息的转储还包括该时间点的应用内存的快照。 如何为进程生成DUMP文件 打开资源管理器-》选择相应的进程-》右键菜单-》创建转储文件 阅读全文
posted @ 2024-01-12 14:52 zhaotianff 阅读(18) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 24 下一页