<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sven的忘却日记]]></title><description><![CDATA[我把梦撕了一夜 不懂明天该怎么写]]></description><link>https://blog.csdn.net/cssxn</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; cssxn]]></copyright><item><title><![CDATA[使用MapView分块读写大文件，需要注意的地方]]></title><link>https://blog.csdn.net/cssxn/article/details/145896019</link><guid>https://blog.csdn.net/cssxn/article/details/145896019</guid><author>cssxn</author><pubDate>Thu, 27 Feb 2025 10:01:46 +0800</pubDate><description><![CDATA[创建文件映射读写大文件时，可能会遇到的坑]]></description><category></category></item><item><title><![CDATA[vs2019编译CryptVdisk提示找不到符号]]></title><link>https://blog.csdn.net/cssxn/article/details/145748366</link><guid>https://blog.csdn.net/cssxn/article/details/145748366</guid><author>cssxn</author><pubDate>Thu, 20 Feb 2025 11:14:04 +0800</pubDate><description><![CDATA[为什么找不到函数实现？经过查看相关函数实现的asm源码，发现声明函数的时候都会有一个条件编译判断，如果定义了MS_STDCALL宏，则使用cpp的调用约定声明函数。最后发现，上面报错的几个函数实现都在不同的asm文件中，在编译时通过通过nasm和yasm来编译成obj文件，然后vs编译的时候直接将obj链接进去。在对应asm文件属性中，修改命令行，传入asm编译工具的-D参数，指定MS_DTDCALL，这样asm文件中的条件编译就可以生效了。明显，这是一个带有名称粉碎的函数，也就是cpp的调用约定；]]></description><category></category></item><item><title><![CDATA[RtlUpcaseUnicodeString转换大写后，Buffer丢失NULL结束符，传入垃圾字符]]></title><link>https://blog.csdn.net/cssxn/article/details/143237809</link><guid>https://blog.csdn.net/cssxn/article/details/143237809</guid><author>cssxn</author><pubDate>Fri, 25 Oct 2024 16:31:42 +0800</pubDate><description><![CDATA[使用UNICODE_STRING时，必须严格遵守Length，MaximumLength都不可信。如果直接用dst.Buffer给一个wstring赋值，则会带入垃圾字符；记录一下，STL和UNICODE_STRING混用，容易出现问题；]]></description><category></category></item><item><title><![CDATA[fatal error LNK1120: xxxx unresolved externals]]></title><link>https://blog.csdn.net/cssxn/article/details/137925149</link><guid>https://blog.csdn.net/cssxn/article/details/137925149</guid><author>cssxn</author><pubDate>Thu, 18 Apr 2024 16:36:37 +0800</pubDate><description><![CDATA[因为A项目是通过DDKWarizd生成的驱动LIB，顺着ddkbuild.cmd脚本跟踪到，最终调用的是DDK目录下面的bin\setenv.bat文件，在文件中有这么一句条件判断，如果编译的平台是WinXP则不会设置。在B项目集成A项目的32位LIB库时，出现此错误，看错误很常见的找不到符号函数的实现代码，实际是DDK7.0 BUILD环境隐藏的bug；随后编译的A项目LIB中没有引用GS相关函数了，B项目也可以顺利编译成功；A项目的source文件中没有定义任何编译器选项，]]></description><category></category></item><item><title><![CDATA[fatal error C1001: An internal error has occurred in the compiler]]></title><link>https://blog.csdn.net/cssxn/article/details/137924091</link><guid>https://blog.csdn.net/cssxn/article/details/137924091</guid><author>cssxn</author><pubDate>Thu, 18 Apr 2024 15:52:35 +0800</pubDate><description><![CDATA[首先确定是新引入的LIB引起的这个编译器错误，经过查看 C1001 错误的微软官方文档解释，如果错误路径是UTC目录下的，很可能是优化导致的此问题，只能挨个关闭LIB的优化选项来定位具体是哪个优化导致的；如果是VS管理的项目，在C/C++ ===> Optimization ===》 Whole Program Opimization选项中设置为NO 即可关闭GL；如果是DKKWarizd生成的项目，可以在source文件中加入一行,即可关闭GL。主要影响是关闭GL后，生成的LIB文件变小了。]]></description><category></category></item><item><title><![CDATA[在内核中阻止进程创建的正确方法]]></title><link>https://blog.csdn.net/cssxn/article/details/134842495</link><guid>https://blog.csdn.net/cssxn/article/details/134842495</guid><author>cssxn</author><pubDate>Wed, 06 Dec 2023 22:29:21 +0800</pubDate><description><![CDATA[最近遇到一个BUG，通过Word在打开hyperlink时，在进程通知回调中结束了Chrome浏览器进程，目标进程虽然被杀了，但是Word还会再尝试用另一种方法再打开浏览器，这种情况只出现在Win7上，百思不得其解。]]></description><category></category></item><item><title><![CDATA[【内核与用户层同步】内核对象安全描述符降权]]></title><link>https://blog.csdn.net/cssxn/article/details/128131420</link><guid>https://blog.csdn.net/cssxn/article/details/128131420</guid><author>cssxn</author><pubDate>Thu, 01 Dec 2022 14:30:54 +0800</pubDate><description><![CDATA[使用下面函数修改内核Event的安全描述符以后，加入SeAliasUsersSid，给普通用户也赋予权限，这样就可以打开内核的Event了，此时用户层程序如果是普通用户权限，则打开Event失败，因为内核创建的对象，普通用户层是没有权限打开的。DriverEntry 创建一个命名的内核通知事件对象。用户层打开该对象，并创建线程，等待事件通知。]]></description><category></category></item><item><title><![CDATA[拦截Minifilter与应用层通信的FltMessage]]></title><link>https://blog.csdn.net/cssxn/article/details/126047988</link><guid>https://blog.csdn.net/cssxn/article/details/126047988</guid><author>cssxn</author><pubDate>Fri, 29 Jul 2022 09:06:08 +0800</pubDate><description><![CDATA[关于如何拦截Minifilter和应用层之间的通信消息，Hook FltMessage的两种方式]]></description><category></category></item><item><title><![CDATA[windbg 内存条件断点]]></title><link>https://blog.csdn.net/cssxn/article/details/122076939</link><guid>https://blog.csdn.net/cssxn/article/details/122076939</guid><author>cssxn</author><pubDate>Wed, 22 Dec 2021 02:33:14 +0800</pubDate><description><![CDATA[判断指针
ba w4 0d58130 ".if(poi(地址) = 值){}.else{gc}"

判断其他数据类型，使用c++语法
ba w4 0d58130 ".if(@@(*(int*)0x0d58130) = 0xa){dd 0x0d58130 }.else{gc}"


]]></description><category></category></item><item><title><![CDATA[win7x86安装驱动提示 0x241 577无法验证此设备所需的驱动程序的数字签名]]></title><link>https://blog.csdn.net/cssxn/article/details/121138602</link><guid>https://blog.csdn.net/cssxn/article/details/121138602</guid><author>cssxn</author><pubDate>Thu, 04 Nov 2021 11:26:10 +0800</pubDate><description><![CDATA[1）背景
win7x64开发驱动时，默认我们会开机F8 关闭强制驱动签名校验，之后可以正常安装驱动。
win7x86开发驱动时，我们也可以用同样的方法，也可以在驱动项目属性上关闭强制校验。
选择驱动项目属性，
链接-》命令行-》附加选项 中加上/INTEGRITYCHECK，这个选项以后，会导致强制校验文件签名。
解决方法：去掉该选项即可


...]]></description><category></category></item><item><title><![CDATA[安装驱动，提示文件找不到 error=2]]></title><link>https://blog.csdn.net/cssxn/article/details/121138194</link><guid>https://blog.csdn.net/cssxn/article/details/121138194</guid><author>cssxn</author><pubDate>Thu, 04 Nov 2021 11:11:40 +0800</pubDate><description><![CDATA[1）背景
安装驱动后，启动服务时，提示找不到文件！检查注册表中对应驱动文件路径等一切正常。
之前遇到过这个问题，也挺坑的，最近又遇到了，原因却不一样!
2）案例 一
说说第一次遇到这个问题时的场景，第一次安装驱动一切正常，卸载驱动后，再次安装，就提示找不到文件。
原因：设备对象被其它驱动引用了，未释放导致。
3）案例 二
驱动中使用了Rtl系列函数，比如RtlCompareMemory，编译后的sys文件导入表中RtlCompareMemory函数链接的是kernel32.dll，这会导致启动驱动服务时，提]]></description><category></category></item><item><title><![CDATA[windbg .for命令遍历Win10所有注册的镜像通知回调函数]]></title><link>https://blog.csdn.net/cssxn/article/details/120466106</link><guid>https://blog.csdn.net/cssxn/article/details/120466106</guid><author>cssxn</author><pubDate>Sat, 25 Sep 2021 02:51:06 +0800</pubDate><description><![CDATA[命令
.for(r $t0=nt!PspLoadImageNotifyRoutine;poi(@$t0)!=0; r $t0=@$t0+8){r $t1=poi(@$t0)&amp;0FFFFFFFFFFFFFFF0h;.printf "pCallback=0x%p pFunc=0x%p\n",@$t1+8,poi(@$t1+8);!address poi(@$t1+8); .echo =======================================}


第一次进来，fffff8075eeb]]></description><category></category></item><item><title><![CDATA[使用git pull时，报错：The following untracked working tree files would be overwritten by merge]]></title><link>https://blog.csdn.net/cssxn/article/details/118720578</link><guid>https://blog.csdn.net/cssxn/article/details/118720578</guid><author>cssxn</author><pubDate>Wed, 14 Jul 2021 09:49:11 +0800</pubDate><description><![CDATA[解决方法：
git fetch origin
git clean -f
git reset --hard origin/master

]]></description><category></category></item><item><title><![CDATA[git 报错：Your configuration specifies to merge with the ref]]></title><link>https://blog.csdn.net/cssxn/article/details/118416690</link><guid>https://blog.csdn.net/cssxn/article/details/118416690</guid><author>cssxn</author><pubDate>Fri, 02 Jul 2021 15:28:58 +0800</pubDate><description><![CDATA[由于git分支名字拼错错误，需要将git分支改名
本地仓库改名：git branch -m oldName newName
删除远程分支：git push --delete origin/oldName
此时执行git pull 就会报错
之前绑定的git远程仓库地址已经被我删除了，在本地仓库执行git pull 时候出现这个错误；
需要先将本地分支与远程仓库解除绑定：git branch --unset-upstream
然后重新执行git pull 就会提示让你重新绑定远程分支
git branch -]]></description><category></category></item><item><title><![CDATA[完美解决Setup has encountered an error(system file time out of sync,error code is 800b0101)]]></title><link>https://blog.csdn.net/cssxn/article/details/118154768</link><guid>https://blog.csdn.net/cssxn/article/details/118154768</guid><author>cssxn</author><pubDate>Wed, 23 Jun 2021 15:53:33 +0800</pubDate><description><![CDATA[在vmware上安装基于泄露windows源码的windows server 2003 iso文件过程中出现错误，

根据提示信息得知bios中时间有问题导致安装过程终止；

后面尝试将日期修改成2003年的时间也不行
尝试试用重新创建一个虚拟机，选择试用空硬盘安装，而不是直接用iso文件从cd安装；
因为是空硬盘，在格式化硬盘过程中会提示一些信息，从提示信息中得知安装的iso镜像是试用版；
因此猜测可能需要将bios中的时间改成编译iso的那一天，于是将时间改成2020-11-19后，成功开始安装系统了
]]></description><category></category></item><item><title><![CDATA[vs2019编译错误：LINK : fatal error LNK1104: 无法打开文件“atls.lib”]]></title><link>https://blog.csdn.net/cssxn/article/details/117083673</link><guid>https://blog.csdn.net/cssxn/article/details/117083673</guid><author>cssxn</author><pubDate>Thu, 20 May 2021 17:07:45 +0800</pubDate><description><![CDATA[在项目属性里面，将Spectre缓解禁用就可以了


]]></description><category></category></item><item><title><![CDATA[C++通过DCOM调用Excel.ExecuteExcel4Macro执行宏代码]]></title><link>https://blog.csdn.net/cssxn/article/details/112594116</link><guid>https://blog.csdn.net/cssxn/article/details/112594116</guid><author>cssxn</author><pubDate>Wed, 13 Jan 2021 21:47:29 +0800</pubDate><description><![CDATA[通过cpp调用excel.application对象的ExecuteExcel4Macro方法来执行任意宏代码，
宏代码直接调用NativeAPI执行WinExec创建powershell进程
要求：目标机器必须安装了Excel，
#include "stdafx.h"
#include &lt;windows.h&gt;
#include &lt;iostream&gt;
#include &lt;oaidl.h&gt;
using namespace std;

int _tmain(int argc,]]></description><category></category></item><item><title><![CDATA[MMC20.Application远程创建DCOM对象，拒绝访问0x80070005]]></title><link>https://blog.csdn.net/cssxn/article/details/112365938</link><guid>https://blog.csdn.net/cssxn/article/details/112365938</guid><author>cssxn</author><pubDate>Fri, 08 Jan 2021 15:52:25 +0800</pubDate><description><![CDATA[关于利用MMC20这个DCOM对象启动进程的方法，网上已经有不少文章了。
我在测试在远程目标机器上创建MMC20对象时，始终提示0x8007005错误
PS测试代码：
$com = [Activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","192.168.198.133"));
$com = Document.ActiveView.ExecuteShellCommand("C:\Windows\System32\Ca]]></description><category></category></item><item><title><![CDATA[使用Orca查看MSI安装包]]></title><link>https://blog.csdn.net/cssxn/article/details/111355932</link><guid>https://blog.csdn.net/cssxn/article/details/111355932</guid><author>cssxn</author><pubDate>Fri, 18 Dec 2020 11:25:18 +0800</pubDate><description><![CDATA[样本信息：https://app.any.run/tasks/c1d2b5ec-ac4d-4394-929f-181a93316892/
Orca是Windows SDK自带的一个MSI安装包解析工具，默认没有安装，需要手动安装一下，安装包在SDK的目录下C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\Orca.Msi



...]]></description><category></category></item><item><title><![CDATA[IDA7.0安装findcrypt-yara插件时报错]]></title><link>https://blog.csdn.net/cssxn/article/details/109999226</link><guid>https://blog.csdn.net/cssxn/article/details/109999226</guid><author>cssxn</author><pubDate>Mon, 23 Nov 2020 16:04:35 +0800</pubDate><description><![CDATA[最近给新环境安装IDA7.0和插件findcrypt3.py
在按照yara-python包时出现以下错误：
   yara/libyara/include\yara/types.h(33) : fatal error C1083: Cannot open inclu
e file: 'stdbool.h': No such file or directory
   error: command 'C:\\Users\\sam\\AppData\\Local\\Programs\\Common\\Micro]]></description><category></category></item></channel></rss>