Windows
文章平均质量分 60
星沉地动
简洁是一种美!
展开
-
VS2017离线安装记录
离线安装vs2017的方法原创 2024-04-24 18:35:51 · 1449 阅读 · 0 评论 -
面对JFlashLite修不好的BUG若有所思
其中JFlashLite是一个比较精简的烧录工具,比完整版JFlash的操作简单明了许多。有些时候只是为了下载HEX文件,用它是很合适的选择。但是这个工具从JLink 5.0版本发布,最目前最新版本V7.66,已经有7年历史了。就这么一个几百KB的小小小小工具,却还BUG百出。...原创 2022-07-08 18:04:08 · 1692 阅读 · 0 评论 -
使用空驱动消除设备管理器里面的未知设备
全新重装Windows系统之后,安装完声卡,网卡,显卡,USB设备等驱动之后。还是会在设备管理器里面看到一些未知的PCI设备。这些PCI设备大多数是主板芯片组的一些特殊控制设备,一般情况下:不给它们安装驱动,也不会影响系统使用。但是每次打开设备管理器,看到一堆感叹号,还是很不舒服。原创 2022-04-12 09:25:59 · 5280 阅读 · 0 评论 -
调用约定不一致引发“error LNK2019: 无法解析的外部符号“
Visual Studio 编译选项有3种调用约定:__cdecl、__stdcall、__fastcall调用约定不一致会引发"error LNK2019: 无法解析的外部符号"原创 2022-03-24 11:34:06 · 2113 阅读 · 0 评论 -
Win10PE纯64位无法重命名文件夹
基于WIN10_x64系统制作的PE系统,完全删掉SysWOW64,只保留纯64位系统,注册表也删掉关于WOW64和32位相关的项。结果进入PE发现无法给文件夹改名,但文件可以正常改名,用cmd命令ren也可以改名。经过一番测试,结果发现与如下注册表有关:添加红框内的项,问题解决。...原创 2021-04-08 11:02:34 · 509 阅读 · 0 评论 -
WinPE系统的自动打包和测试的批处理脚本
在制作WINPE系统的时候,通常是用虚拟机来测试。纯手工操作有以下步骤:1.修改注册表或者修改文件等一系列增删改操作。2.手动用wim工具打包成boot.wim3.手动挂载虚拟机的VHD硬盘文件4.把boot.wim复制到虚拟机硬盘的指定目录5.卸载VHD硬盘文件手工操作确实很烦琐,点鼠标点到手抽筋。所以我们需要一个自动化脚本来完成以上操作。以下批处理脚本就是用来干这个事情的,内容仅供参考:@echo offtitle WinPE镜像打包工具REM 设置工作环境变量se原创 2021-04-02 12:53:46 · 1235 阅读 · 0 评论 -
监控远程桌面连接并通过python发送提醒邮件
由于RDP远程桌面功能非常方便,但又存在较高风险,只能通过提高安全防护,避免造成损失。本文记录一种邮件提醒远程登陆的方法和过程。工作原理:1.利用windows的计划任务功能,当远程登陆的时候,调用指定的程序;2.此处调用的是python脚本,利用python来完成发送邮件的功能;3.在python脚本中调用一个EXE小程序来获取登陆信息(用户名,客户端名称等信息),第一步:写一个EXE小工具,获取远程登陆信息使用C语言编写,通过win32底层API读取客户端信息;并把信息打印到标准输出原创 2021-01-19 13:00:45 · 1667 阅读 · 2 评论 -
win32实现飘浮文字的一种实现方法
飘浮文字效果如下图:不可点击,不可选中,任务栏不显示图标,文字背景完全透明。实现方法是通过创建透明窗口来实现,在透明窗口上绘制文字。主要依靠系统提供的窗口扩展风格:WS_EX_LAYERED 实现层级窗口WS_EX_TRANSPARENT 实现鼠标穿透WS_EX_TOOLWINDOW 实现不在任务栏显示WS_EX_TOPMOST 实现文本置顶还有一个关键函数SetLayeredWindowAttributes(hWnd,0,0,...原创 2020-12-02 14:40:09 · 1073 阅读 · 0 评论 -
MFC调用winhttp实现简易的HTTP服务器程序
Windows提供的winhttp函数库用来快速实现HTTP协议的应用程序,包括客户端和服务器端。服务器开发一般流程是这样的:1.HttpInitialize 初始化WinHTTP函数库;2.HttpCreateHttpHandle 创建一个HTTP队列句柄,用来接收HTTP请求;3.HttpAddUrl 绑定要监听的URL,写为http://*:80/表示所有网卡80端口的HTTP请求都处理,其中的*号可以改为IP地址;4.创建一个线程用来处理HTTP请求队列;5.HttpRece原创 2020-07-01 16:30:35 · 3609 阅读 · 13 评论 -
使用nw.js制作桌面版draw.io
draw.io是一个开源的在线流程图制作软件,源码地址:https://github.com/jgraph/drawio这个软件的特殊之处在于,它完全使用web技术开发,可以很方便地搭建在线编辑软件。对于Windows个人用户而言,还是使用桌面程序比较好一些。官方也提供桌面版本程序:https://github.com/jgraph/drawio-desktop官方桌面程序是使用e...原创 2020-03-30 16:16:19 · 1005 阅读 · 0 评论 -
Windows平台快速切换hosts文件的小工具
上周孩子她妈跑过来说电脑上有个软件打不开,让我给看看。这个软件就是SwitchHosts!,具体问题当时没有保存截图,总之最后解决的办法就是把C:\Users\Administrator\.SwitchHosts这个文件夹删除就好了。虽然问题已经解决,但是我分析了下这个软件,核心功能就是切换预设的hosts文件方案嘛,功能并不复杂。但是它:1、高达100MB的程序体积(大概是为...原创 2020-03-30 09:14:40 · 1789 阅读 · 0 评论 -
Windows更新信任证书颁发机构列表
Windows系统内置的信任根证书是需要随时更新的,任意打开一个HTTPS网站,如果发现其证书不是由受信任的根证书颁发机构提供的,那么有两种可能:一、本地储存的根证书太旧了,需要更新,这时就会触发系统自动请求证书;二、这个证书确实不是有效的,那么给出无效证书的警告;有时候自动更新没有成功,那么需要手动更新,下面这个地址可能就是下载根证书的链接:http://www.dow...原创 2020-03-28 12:56:58 · 4732 阅读 · 0 评论 -
由DLL文件生成LIB文件
网上广泛使用的方法,经过测试没有成功!因为DLL导出名和编译链接时使用的名称不一样,导致编译通不过。一种是xxx@nn格式,还有一种是__imp_xxx@XYZ格式。如果手动修改DEF文件里面的函数名为链接所需的名字,编译能通过,但运行时提示找不到XXX函数的入口点。经过一番百度,终于找到一位高人所写的文章和工具解决了我的问题!文章地址:https://bbs.csdn.net/topi...原创 2020-02-28 18:40:35 · 964 阅读 · 0 评论 -
Windows系统使用WMIC的获取硬盘ID的问题
对于XP系统查不到硬盘ID;对于win7系统硬盘ID是HEX格式的文本(40位),如:202020202020325a4b415244544;对于win10系统硬盘ID是字符串格式,如:XYZ1234567890;对于win8.1系统和win10一样.对于win8和vista没有裸机测试,所以结果未知.原创 2017-08-30 14:03:40 · 28810 阅读 · 2 评论 -
制作Win7PE精简版的经验总结笔记
写这篇文章的主要目的是做笔记和总结一些经验。首先是WinPE的文件目录:Program Files这个目录是程序目录,里面的文件可以全部删除,只保留一个文件就行了:/Program Files/Internet Explorer/ieproxy.dll没有这个文件会导致总是在新窗口打开文件夹!ProgramData这个目录是程序数据目录,里面与PE有关的就是有几个默认...原创 2019-08-14 12:59:30 · 3491 阅读 · 0 评论 -
制作Win7PE精简版的经验总结笔记二
这篇文章是接上一篇,主要写关于注册表的内容。WinPE的注册表本质是几个文件,但这些文件不能直接编辑,需要用regedit或者Registry Workshop。它们存放在\Windows\System32\config目录。这个目录下面有这些子目录和文件: Journal/ RegBack/ SystemProfile/ TxR/ BCD-Template COMP...原创 2019-08-14 15:23:04 · 1631 阅读 · 0 评论 -
收集一些Windows系统非常严重的安全漏洞
今年Windows爆出了太多远程漏洞,这些漏洞主要存在于SMB和RDP服务。感觉有必要收集一下这些严重漏洞。首先在微软官方提供的安全更新指南查询:https://portal.msrc.microsoft.com/zh-cn/security-guidance获取补丁编号后到这个链接下载更新补丁:https://www.catalog.update.microsoft.com/sear...原创 2019-08-15 10:52:01 · 6393 阅读 · 0 评论 -
Windows系统自带端口转发功能
一、使用如下命令把127.0.0.1:80转发到192.168.1.1:80:netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=80 connectaddress=192.168.1.1 connectport=80二、使用如下命令取消端口转发:netsh interface portpr...原创 2019-08-27 11:20:43 · 2141 阅读 · 0 评论 -
MFC默认的多国语言实现方法
关于MFC多国语言的实现方法,网上给出的主流方案是:一. 自己实现从ini或者xml文件读取字符串,根据需要动态填充到控件或者菜单中.这种方法通用性好,甚至可以实现动态切换界面语言,但实现起来比较复杂,需要自己写很多代码.二.加载纯资源文件生成一个纯资源的DLL文件,每种语言一个DLL文件.在程序启动的时候,一般是XXX::InitInstance()函数中添加以下代...原创 2019-08-28 15:40:22 · 1317 阅读 · 0 评论 -
如何从MSU系统补丁里提取出所需要的文件?
Windows补丁文件是*.msu格式, 这是一种压缩文件格式.正常情况下,只需要双击这个文件就可以安装补丁.但是我不想安装更新,只想从里面提取出某个dll文件 ,怎么办?首先用7-zip打开这个msu文件,可以正常打开,发现里面有如下文件结构:我们所需要的目标文件,就在那个.cab文件包里面.继续用7-zip打开这个.cab包,发现如下文件结构:看上去好像正常打开...原创 2019-08-30 17:59:57 · 5667 阅读 · 0 评论 -
让基于.NET的程序变成绿色版独立运行
临近国庆了,要抢火车票了,但是发现"12306分流"抢票软件是基于.NET4.0开发的,要求安装.NET4.0.Windows XP集成了.NET2.0版本Windows 7集成了.NET3.5版本Windows 8集成了.NET4.0版本由于目前使用的是Windows 7,没有.NET4.0环境.当然安装是没问题的.但是作为一个系统技术爱好者,总是想研究一下与众不同的方案??? 有没有...原创 2019-09-05 13:13:52 · 2336 阅读 · 0 评论 -
Portable.NET一个绿色版.NET运行环境,支持.NET4.0版本
经过对飞信VMdotNET的研究,利用其核心文件进行二次开发.得到一个绿色版的.NET运行环境.并且添加了对.NET4.0版本的支持.经过测试,可以在WinXP运行12306分流抢票软件.下载地址:https://gitee.com/kerndev/Portable.NET由于体积限制,GIT仓库只包含少量DLL组件,运行更多EXE程序,需要完整的.NET组件.完...原创 2019-09-10 09:30:07 · 1980 阅读 · 1 评论 -
基于阿里钉钉网页版制作绿色版客户端
由于工作需要必须使用阿里钉钉这个聊天软件.但随着版本更新,疯狂添加新功能,体积越来越大,无法忍受.因此寻求体积小巧,绿色便携的PC客户端.在下载了无数个钉钉旧版本之后,可以发现一些钉钉软件的发展历程......最初钉钉把主要功能都在网页版上面实现.早期的客户端都是基于网页版制作的.客户端使用nw.js把网页封装成为客户端.后来V2.X版本核心还是nw.js但是把网页版变成了...原创 2019-09-10 16:28:18 · 1872 阅读 · 0 评论 -
Foxmail发送邮件乱码的临时解决办法
目前使用的版本是Foxmail 7.0.1.92, 因为这是最后一个使用经典界面的版本.一直用了差不多5年了没有遇到什么问题.直到昨天突然发现发出去的邮件正文是乱码,邮件标题正常,而且接收邮件是正常显示.经过一番研究,发现这个Foxmail的一个BUG,这个BUG在7.2.6版本以后才被修复.临时解决办法:一. 重新设置系统语言.设置系统语言为英文,重启电脑,发送邮件正...原创 2019-09-12 10:52:27 · 9480 阅读 · 0 评论 -
快速查询Windows内核结构体定义
搜索资料时找到一个网站可以比较方便地查询Windows内核结构体的定义.http://www.nirsoft.net/kernel_struct/vista/index.html里面包含了很多公开和非公开的结构体的定义.查询也很方便.收藏一下....原创 2019-09-16 14:26:50 · 823 阅读 · 0 评论 -
打造适用于KVM云服务器的极简Win7PE(仅80MB)
鉴于之前折腾WXPE的失败经验,在折腾Win7PE之前,先不考虑体积和功能,找一个通用的Win7PE做个实验。发现Win7PE比WXPE要稳定得多,没有鼠标丢失问题,安装驱动也很顺利!于是开始玩命折腾,先定一个小目标:一、Win7PE只需要BOOT.WIM文件就可以了,用系统自带的Bootmgr就可以引导;二、体积一定要小于100M,最好小于85M,才能塞进100M的隐藏分区;...原创 2019-08-14 11:26:53 · 2172 阅读 · 0 评论 -
在KVM虚拟化云主机上使用WXPE的研究
云服务器系统运行Windows Server 2008 R2,有100M的隐藏启动分区。为了对服务器的重装系统等日常维护工作,需要运行一个PE系统,最好能装进这个100M的启动分区。要求体积要小巧,首先想到的就是WXPE了,WXPE虽然古老,但体积非常小巧,核心文件压缩后只有20M左右。于是在硬盘里找出我珍藏多年的WXPE.ISO。上传到服务器,将100M隐藏分区分配到A盘,并上传...原创 2019-08-08 13:15:41 · 1224 阅读 · 0 评论 -
为精简版VS2008添加DEBUG版运行时库到系统目录
首先要感谢精简版VS2008的作者:风铃夜思雨(https://bbs.pediy.com/thread-66741.htm)很可惜这个资源在2018年的今天过于老旧,网上已经快要绝版了。原作者的V1.03版本VS2008SP1在网上已经找不到资源了,现在我能找到的只有原作者的V1.01版本。完整的VS2008实再太臃肿,安装过程也需要很多时间,而且还附带了一大堆C++开发跟本用不上的...原创 2018-12-31 20:29:05 · 2104 阅读 · 0 评论 -
socket编程为什么不会弹出Windows防火墙安全警告?
在启动了Windows防火墙的电脑上,第一次运行QQ,Chrome等网络程序的时候,会弹出一个安全警告,如图:但是为什么自己用socket编程接口,开发的网络小程序,不会弹出这个窗口来呢?经过一番研究,发现了原因:在socket编程的流程中,有一个bind函数,用于绑定本机IP地址和端口号。而这个bind函数就是防火墙弹窗的关键。{ int ret;sockaddr_...原创 2018-12-21 15:43:33 · 3071 阅读 · 0 评论 -
32位Windows 7开启PAE可以识别4GB以上内存
众所周知32位Windows 7系统最大只能识别4GB内存,并且可用内存最多为3.25GB.但是32位的Windows Server 2003/2008却可以使用4GB以上内存,原因就在于这个系统可以利用x86的PAE特性。然而默认情况Windows 7却无法使用PAE特性,原因在于系统内核层屏蔽了此功能,网传的修改BCD参数,bcdedit /set pae forceenable ...原创 2018-10-21 17:12:48 · 10869 阅读 · 5 评论 -
修复Keil5的菜单栏字体
用Keil5已经相当长的时间了,一直觉得Keil5的菜单栏字体看着不顺眼,应该只有处女座才会注意到吧? 特别是把Windows 7主题设置为经典主题之后,系统字体已经变为宋体,搞开发的电脑屏幕分辨率又不高,且DPI为96的硬件条件下,用宋体做系统字体比较清晰。因为宋体在字号为9-13这个范围时,使用的是点阵字体,所以效果非常锐利不会出现模糊。然而Keil的菜单栏字体却很模糊,整个菜...原创 2018-08-28 15:21:59 · 6389 阅读 · 2 评论 -
Windows中的字体映射关系
从软件开发的角度,研究如何自定义Windows的系统字体。在Windows程序开发中经常使用CreateFont创建指定的字体,其中一个参数"lpszFace"指定了字体名称。那么系统是如何加载这个字体的?首先会从注册表中查找:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts这里列出了系统...原创 2018-07-30 10:27:48 · 5333 阅读 · 0 评论 -
VirtLCD:在Windows上调试各种嵌入式GUI的小工具
前言为了方便测试和移植嵌入式GUI,自己做的一个小工具,可以在windows上模拟出LCD,键盘和鼠标。虽然像emwin一样,大多数GUI都提供了自己的模拟工具,但是一般只能用于它本身,不方便移植其它GUI或者自己开发GUI,所以写了这个通用工具,理论上支持移植任何GUI,当然主要是测试目的。简介本工具提供了LCD帧缓存以及鼠标和键盘接口,可以定制屏幕宽度,高度和颜色位深,支持16位,24位,32...原创 2018-03-21 12:48:24 · 2570 阅读 · 5 评论 -
通用点阵字库生成工具
虽然点阵提取工具,网上有很多了,但是找来找去,没找到我满意的工具,于是自己写了一个小工具。点阵字体,在嵌入式GUI开发中,用得也是非常频繁的。主要有两种使用场景:1.生成某种编码的全部点阵,以BIN的形式放在FLASH中加载。2.生成部份文字的点阵,以C文件的方式,写在代码里。本工具的特点:1.完全免费,不用到处找破解工具;2.通用性好,支持任意编码,任意语言...原创 2016-11-16 16:55:45 · 19544 阅读 · 55 评论 -
解决笔记本光驱位硬盘休眠卡顿问题
写了一个小工具,开机运行就能关闭硬盘APM啦!原创 2016-10-28 10:51:30 · 15153 阅读 · 20 评论 -
[MSYS]另类busybox调用/安装方法
在Windows环境下的使用MSYS2,由于Windows上面不支持ln -s这样的软链接,默认情况下,如果使用busybox --install 这样的话,busybox会把自己复制N遍,每个命令都是一个exe文件,且文件大小等于它自己。这样的话就浪费用了大量的磁盘空间,于是我研究了一下,找到一种可以节省空间的调用方法.原创 2017-08-08 13:05:56 · 2095 阅读 · 0 评论 -
自己动手制作纯净版的WinPE
WinPE作为系统维护工具,已经必不可少,WinPE有很多版本,官方介绍的WinPE版本如下:WinPE1.0 基于WinXPWinPE1.1 基于WinXP SP1WinPE1.2 基于Win2003WinPE1.5 基于WinXP SP2WinPE1.6 基于Win2003 SP1WinPE2.0 基于Win VistaWinPE2.1 基于Win Vista S原创 2015-11-13 12:42:40 · 64597 阅读 · 18 评论 -
微软符号服务器使用方法
微软符号服务器原创 2016-11-18 11:39:04 · 14059 阅读 · 0 评论 -
winsxs探索之应用程序配置不正确程序无法启动
“应用程序配置不正确程序无法启动”这是经常会遇到的错误提示。那么它到底意味着什么,如何解决这个问题?1. 这个错误提示意味着什么?意味着此程序运行所需的组件不存在。这个组件的描述在程序的manifest文件里。大多数manifest文件是以资源的形式内嵌在可执行文件里面的。这个文件长什么样?我随便找来了一个EXE文件来研究,导出它的资源文件:/.rsrc/1033/manife...原创 2018-12-31 21:00:11 · 1971 阅读 · 0 评论 -
winsxs探索之sxstrace错误跟踪工具
当程序弹出"应用程序配置不正确程序无法启动”的时候,都会提示你使用sxstrace工具来追踪信息。sxstrace工具的用法是这样的:第一步:输入并运行SxsTrace Trace -logfile:log.etl第二步:运行你的测试的程序hellp.exe第三步:在刚才的命令窗口按下回车,停止日志收集第四步:输入并运行SxsTrace Parse -logfile:log.e...原创 2018-12-31 21:24:02 · 1894 阅读 · 0 评论