在 Visual Studio 中设置指针星号的位置
作为一个完美主义者,如果写出来的代码,让自己感觉到不那么舒服,你需要好好研究研究,如何解决这个问题。
在写代码的过程中,我碰到了这样的一个小问题。
一直以来,我对指针的星号的位置比较敏感,我喜欢准确地将指针的星号放在中间,不偏向左边,也不偏向右边。
下面几个图,你就可以看到我说的意思了。
星号在左边:
星号在中间:
星号在右边:
所以,现在你应该明白我说的意思了吧?
将星号放在哪一边,是完全...
Visual Studio 调试启动时会卡几十秒钟
今天在鼓捣 Topomel Box 的时候,发现这么一个问题:工程启动调试后,VS会彻底无响应,时间会持续大概半分钟左右,然后才会开始正常的调试。
我是百思不得其解。
经过测试发现,其他DLL工程都可以正常调试,就是主程序工程有这个问题。说明问题出现在这个工程里。
因为调试时我经常需要用的,每次耽搁这么半分钟,那可太不方便了。叔可忍婶不可忍。
其他的工作项不得不先停一停,得专心研究这个问题。
继续...
WHEA-Logger 17错误:发生了已更正的硬件错误
要记录一下,以免以后阿尔茨海默。
不瞒各位,最近 TopomelBox 开发进度接近停止,源于我一直在折腾我的老爷机(联想-天逸510)。这老伙计跟了我三年多,兢兢业业,也还算皮实。但是最近一个月,经常动不动就蓝屏错误:WHEA_UNCORRECTABLE_ERROR。
本来想着如果有个崩溃转储也还行,可以用WinDbg研究研究。但是发现,转储直接生成失败。看起来,有点和内存和硬盘有点关系了(?...
小技巧:OneDrive一直显示正在登录
一直都使用OneDrive,最近发现不能正常登录了,现象是点开OneDrive,一直显示”正在登录”。
这可不行。
于是开动小脑筋,在网上找到方法并进行了测试,测试结果显示:方法有效。独乐乐不如众乐乐,现分享给大家。
只需要修改首要和次要DNS为:4.2.2.1 和 4.2.2.2 即可。
无需重启,稍微等待一会儿,OneDrive就可以登录了。
特此记录,防止以后记忆不好...
亲测:华为老爷机安装谷歌框架
这两天我花了些时间瞎折腾了一番,好消息是:折腾成功。
在此记录下来,希望可以帮助有同样苦恼的老哥。
基本环境:
手机:华为Nova 2s。
目标:运行谷歌框架
这台华为的老爷机Nova 2s,因为工作原因需要给它装上谷歌框架,以及其他一大堆的谷歌全家桶。
鸿蒙
一开始手机运行的最新的鸿蒙系统,操作体验和各项功能还不错。于是网上找到了GMS安装器,点击一键安装后,提示重启。重启之后,重新进入谷歌安装...
记一次远程桌面内部错误的解决方法
问题
一个燥热的下午,闲着没事,远程桌面到一台Server 2012的机器,没有像往常一样顺利连接,而是提示:出现了内部错误。
好家伙,出新鲜事儿啊。
尝试解决
1) 最近客户机Win10自动更新了不少东西,主要是21H1的版本更新,怀疑是不是客户机上和远程桌面相关的组件更新了,导致了和服务器的组件交互失败。
于是,先排除客户机的干扰,具体来说,就是在另一台机器上重试。
另一台Win10机器,没有...
VS2020: 关闭”Show Intellisense Errors”
随着你对你的代码越来越熟悉,渐渐地,你不需要Visual Studio提示一些所谓的”潜在编码错误”了。
关闭Show Intellisense Errors的方法如下:
Tools->Options->Text Editor->C/C++->Advanced->Intellisense
将[Disable Error Reporting]设置为True。
小技巧:使用隐藏窗口解除组件间耦合
问题
随着项目的规模逐渐变得大了起来,解决方案中的组件的个数和相互之间的关系也慢慢复杂起来。如果一个组件A显式调用另一个组件B,则我们认为这个组件A依赖于组件B。如果被依赖的组件B的接口发生变化,则组件A会受到影响,轻则需要重新编译,重则导致新Bug的引入。
改进方法
显式调用的优点在于使用简单,只需要组件的头文件和库文件即可实现组件代码调用,这样也带来了组件之间的强耦合。今天我们引入一种基于隐...
小技巧:使用对象机制实现组件初始化及销毁
问题
最近在对一份代码进行重构的时候,发现在特殊情况下,组件的销毁接口会因为程序的异常而得不到调用,这个虽然不是什么大问题(整个程序都出现异常了,进程退出是即将发生的事情),但是对于有点完美主义的我来说,这个的的确确的,降低了程序的异常安全性。
解决方法
我们先来看下面一张图,它描述了程序改造之前的交互场景:
在上图中,我们在CWinApp对象的InitInstance中调用了组件的Init接口...
小技巧:使用DebugView进行远程调试输出
问题
在一次开发过程中,远程机器已经进入了锁屏模式,这个时候如果想得到远程主机上的调试信息就比较困难了。那么,到底有没有办法呢?
解决方法
使用DebugView工具的远程调试输出功能,可以解决上述问题。
具体方法
1) 使用命令行工具(CMD)定位远程主机DebugView所在的目录,然后在命令行下执行:dbgview /a,执行此命令后,DebugView工具会以Agent模式运行。在这个模式...