Windows
文章平均质量分 52
yayongm
这个作者很懒,什么都没留下…
展开
-
关于Win10上Program File和Program File(X86)没有写权限的问题
解决方法:按Windows+R键,打开“运行”,然后输入“gpedit.msc",就是打开组策略,这个在控制面板中也可以打开。在组策略里找到“计算机配置”-“Windows设置”-“安全设置”-“本地策略”-“安全选项”,在“安全选项”里认真查找“用户帐户控制-以管理员模式批准运行所有管理员”这项,将这项禁用掉。作为一个开发人员,使用Win10时,感觉每次都是在跟弱智的MS斗争,而且是每次都感觉自己被MS摁在地上无情摩擦的那种,算了,不吐槽了。来源:https://answers.micr原创 2021-09-01 16:18:46 · 18423 阅读 · 3 评论 -
SQL Sever奇葩问题踩坑记
折腾了一下SqlServer,踩了一下坑,写个文档,留个记号:因学习需要,安装SQL Server2008R2开发版,但总是不成功,报错信息为:TITLE: SQL Server 2008 R2 安装程序------------------------------出现以下错误:An error occurred during the installation of assembly 'Microsoft.VC80.CRT,version="8.0.50727.42",type="win3.原创 2021-08-30 16:45:19 · 979 阅读 · 0 评论 -
作为生产力工具,D7的优势在哪里?
严重声明: 本文涉及大量有理吐槽,抹黑,请自行斟酌并妥善处理,对于心理承受能力较差的同学,建议在父母监护下阅读,谢谢。 这个问题其实无解,萝卜白菜,各有所爱,但是作为一款纯粹的生产力工具,或者说,站在生产力工具(疯狂吐槽)的角度看,相对与D的其它版本来说,D7的优势到底是什么? 首先,我们必须界定几个问题,然后再来讨论为什么D7依然是我心目中的高效生产力工具。我们知道,作为RAD工具,拖拖拉拉就能搞定界面设计,这是开发工具的一大进步,同时也是高生产力工具的标准,如果抛弃这个...原创 2021-07-23 10:56:44 · 1063 阅读 · 2 评论 -
奇葩的编译问题
刚刚遇到的一个奇葩的编译问题,先记录下来,以供参考。 打开D,从帮助中拷贝一段演示代码到窗口中,点击F9编译,瞬间发现整个pascal文件的断点全乱了。遂逐个查找文件是否有重复,文件是否重复,结果是所有文件都没有问题。 经过折腾之后,才想起:那个垃圾帮助文件中有奇葩的不可见字符!!!同理,如果你从网络的网页上复制代码也会遇到代码中存在奇葩的不可见字符,对,就是这个奇葩的不可见字符导致整个代码中的断点全部乱掉且无法正确设置断点和调试!!! 明白过来之后,遂将文件内容复制到其它编辑...原创 2021-07-23 09:44:39 · 149 阅读 · 0 评论 -
为伊消得人憔悴,衣带渐宽终不悔(2)
领导要下载一个在线视频,可惜是m3u8格式的,找了好多下载工具,没一个好用的,没办法,只好自己动手丰衣足食了! 经过整个周末两天一夜的奋战,终于搞明白了下载的基本原理,也通过了初步实验,最终成品尚未出炉,所以只好先将一些踩过的坑给记录下来,以便将来参考。 1.解析m3u8文件。这个太简单了,没啥难度,请自行略过。 2.大部分视频文件都有加密,请一定要解密,解密,解密!!!解密的密码在m3u8文件的开头URI="http://"这个里面。 3.大多情况下的加密都是...原创 2021-03-14 15:10:01 · 219 阅读 · 0 评论 -
从生产力工具方面吐槽一下吧
废话不说,直入正题,某美国企业的原装笔记本电脑,原版Win10家庭版操作系统,版本2004(OS内部版本19041.685):首先,一款操作系统,你除了提供基本的CPU调度文件管理等基本功能外,为用户提供各种各样可定制化服务,扩展用户体验,我是能理解的,但是,这有一个前提:那就是,你不能忘了初心。显然,从我个人角度来看,操作系统的初心,首先就是一点:生产力工具,生产力工具,生产力工具!!!!至于其它的游戏、娱乐,这些都属于锦上添花,可有可无的内容,没有游戏,没有娱乐,该干的活还是要干。至于说,游戏和原创 2021-01-12 11:22:37 · 197 阅读 · 1 评论 -
写篇踩坑笔记吧
这个是最近一段时间遇到的各种花样别出的坑,这些坑只针对D7,不知道啥是D7的可以直接关闭窗口了。坑1:D7在Win7及以上版本调试时,只有BuildWithRuntimePackage时才能正确获取Win32MajorVersion,Win32MinorVersion,Win32BuildVersion等值。不带包编译后,运行时不存在该问题。如果存在,可能需要使用管理员运行,即在程序上右键RunWithAdministrator,该问题的具体原因未知。坑2:D7程序启用UAC后,在Wi原创 2021-01-08 10:56:49 · 126 阅读 · 1 评论 -
在Delphi中动态调用事件方法
最近用到了一个稍微高级一点儿的内容,就是在代码中动态调用事件方法,或者说是函数指针,由于Delphi的特殊性,所以,直接上代码吧:procedure TForm1.Button2Click(Sender: TObject);var f, f1: TNotifyEvent; d: NativeUInt; pm, pm1: ^TMethod;begin New(pm); try f := Button1Click; pm.Code := TMethod(f).Co原创 2020-12-17 13:50:59 · 1166 阅读 · 0 评论 -
关于Toolbar的问题
Toolbar最关键的属性是Transparent,该属性在DoubleBuffered情况下非常容易出现黑色背景的问题,即整个Toolbar的背景全部为黑色,无法辨识。在Windows开启主题(例如XP、Win7等主题)情况下特别严重。 经实践分析,这是由于Toolbar在Transparent属性为True且DoubleBuffered为True的情况下无法绘制Toolbar的默认背景下导致的问题。 解决方案: 明白原理后,解决方案其实非常简单: 方案1、...原创 2020-12-09 09:51:27 · 242 阅读 · 0 评论 -
在工控机(XPE)上部署WEB服务器!
作为大量使用的工控机,受限于内存和硬件的限制,部署一些WEB服务器是比较麻烦的。为了解决这些问题,Moon Http Server(MHS)提供了一套比较可靠的解决方案,该方案的优点是:1.在Windows XP Embeded SP2以上即可完全部署。2.真正的绿色、单文件部署!加上一个显示HTML的主页面,只需两个文件(mhs.exe和index.pp)。3.占用极少的存储空间,使用不到2M存储空间即可完成完整部署。4.完整的、全功能、动态脚本Http Server。5.扩展的W原创 2020-07-30 16:26:46 · 1110 阅读 · 0 评论 -
MHS(Moon Server Http),基于Pascal脚本的全动态Http服务器2020年最新更新,欢迎挑战、测试!
完整开发的基于Pascal脚本的高性能Web服务器,功能对标Apache/PHP,性能未进行对标测试,但非常强悍,可自行测试。 脚本包含所有演示代码。 已包含完整演示网站、新闻、博客、后台管理等全部功能。 首个全功能Pascal脚本Web服务器2020年再次更新! 更多详细内容请参考History.txt,或者参考官方网站www.moonserver.cn 也希望更多大牛前来交流、拍砖、打脸!!!...原创 2020-07-28 10:30:27 · 490 阅读 · 0 评论 -
结构初始化的小Bug,又是一个坑,无论新手高手都要注意!!!
Bug代码如下:var AParam: TUserRecord;begin AParam.Value = 123;因为AParam是个结构,在Windows平台上没有问题,但到了其它平台直接蓝屏然后挂了...原因很简单,仅仅是因为AParam中的其它参数没有初始化,导致后面的代码在执行过程中出现了问题。这种问题虽然都很弱智,但是找起来却非常非常麻烦...解决方法也很简单:...原创 2020-03-11 17:15:23 · 206 阅读 · 0 评论 -
Win7 64位内存申请上的一个小坑!!!
今天在Win7 64位上写了这么一段程序:varp:Pointer;iSize:Integer;beginiSize:=1024*2;GetMem(p,C_1M*iSize);简单点儿说,就是申请一块2G的连续内存,结果每次都申请失败,还以为操作系统不支持。折腾半天后才发现,其实是iSize的问题,因为iSize是32位整数,所以当达到2G时...原创 2020-03-11 11:01:28 · 288 阅读 · 0 评论 -
性能杀手!老生常谈。。。
写了一个内存管理器,主要用来做缓存,于是就测试一下性能,顺便说说性能杀手都在哪里。预警:老生常谈,大侠可以右上角点关闭了。1。这个内存管理器就是最简单的那种,固定长度的(比如:固定256字节)。没啥技术含量,然后就是加锁给线程调度,因为是固定长度,所以开始就分配一大块内存(2M)进行分片并加入数组实现的队列。性能吗,水平太菜就不要对我要求太高了,基本内容摆在哪儿(数组队列,AtomLock),理论...原创 2018-03-25 11:48:39 · 399 阅读 · 0 评论 -
小测Windows上的极限QPS
看到别人发布的Linux号称36万的QPS,我就忍不住想知道自己机器的性能,于是也用ab简单做了一个QPS测试。直接上结果吧:测试机器:i5-4460@8G内存。测试服务:HTTP测试方法:ab -n1000000 -c100 -k http://localhost/root返回内容:<html><title>Hello</title><body>2...原创 2018-03-22 09:17:43 · 1019 阅读 · 3 评论 -
深入TEvent类并解决PulseEvent问题
问题来源于:http://www.cnblogs.com/del/archive/2009/02/16/1391192.html其中有一段代码:procedure TForm1.Button5Click(Sender: TObject);begin ShowMessage('TEvent 类没有提供这个功能'); {我试过用 PulseEvent(MyEvent.Handle) 也不行}en...原创 2018-03-22 09:58:54 · 1230 阅读 · 0 评论 -
Pascal中TFileStream的Create问题
按照帮助说明,当使用fmCreate参数时,如果文件存在则以只写方式打开,否则创建。在实际使用过程中,Win7上是没有以只写方式打开,而是直接强制创建新文件了。 跟踪源码到SysUtils单元中的FileCreate函数: Result := Integer(CreateFile(PChar(FileName), GENERIC_READ or GENERIC_WRITE, ...原创 2018-03-16 10:48:56 · 1969 阅读 · 1 评论 -
继续TEvent,破事真不少
在Windows平台上,TEvent的核心是CreateEvent函数,因此咱们就直奔主题吧。本来是想测试一下CreateEvent的内存占用的,以为一个THandle只有4个字节(Win32)的内存占用,应该不会有别的事情发生,于是就简单写了以下代码:procedure TForm1.Button2Click(Sender: TObject);var i, iCount: Integer; ...原创 2018-03-22 10:40:17 · 1925 阅读 · 1 评论 -
Indy Http Server极限测试
测试环境:Win32,i5-4460@3.2,Indy 10.5.7直接在OnCommandGet中返回下面一行字符串:'<html><title>Hello</title>' + FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz', Now) + '</html>';使用ab进行测试:ab -n100000 -c140...原创 2018-04-09 16:39:29 · 1522 阅读 · 4 评论 -
TMemoryStream的性能问题
TMemoryStream作为使用非常多的一个Stream类,日常使用时并没有感觉到慢,当然这是因为代码中使用频度不高的缘故,当使用频度一上去,TMemoryStream的性能简直不忍直视。好了,我们看看原始代码中是怎么写的:function TMemoryStream.Realloc(var NewCapacity: Longint): Pointer;begin if (NewCapac...原创 2018-05-12 11:04:27 · 997 阅读 · 0 评论 -
这个确实遇到过了!
刚看到一个小故事:某公司有个很著名的故事:有一个系统是用来发放固定电话卡号的。发放的时候为了让号码能随机化,需要取系统时间作为种子生成随机数。但这个算法有个问题,如果短时间内被调用多次,取得到的系统时间(可能是毫秒)就是相同的。那么计算生成的前后的卡号就是有规律的。原来的程序员在代码中增加了一行语句seep(1),通过这行语句强制每次调用取得的系统时间是不同的。好了,故事来了。这段代码...原创 2019-01-08 11:18:41 · 231 阅读 · 0 评论 -
Windows中按钮文字的布局样式
用到CheckBox的按钮居右处理,发现竟然没有文字居右的选项。从面向对象的角度来说,咱要重载掉CreateParams重新创建一个新类,可是这个功能基本上很少用到啊,那么就只能用Windows Api 函数直接修改啦。上代码:function SetWinControlTextAlignment(const AControl: TWinControl; const Alignment: TAli...原创 2018-03-30 10:00:20 · 595 阅读 · 0 评论