12 2014 档案
摘要:常用的Linux终端gnome-terminal (Gnome标配)xfce4-terminal (XFCE4标配)lxterminal (LXDE标配)konsole (KDE标配)前面3个都是GTK界面风格,konsole则是Qt界面风格,当然它们的核心都是基于GNU/Bash这个强大的Linu...
阅读全文
摘要:最近做跨平台图形用户界面库选型,权衡很多因素后最终选择了Qt,其中一个重要因素就是Qt使用LGPL授权许可。由于本人对LGPL理解有限,始终对闭源商业软件如何发布Qt库存在疑问,其中最关心的是:发布的商业软件中是否可以包含(或附带)Qt的动态链接库(dll,so)。于是在网络上查找到如下相关资源...
阅读全文
摘要:成为优秀程序员的10个有效方法作为一个在 IT 行业的软件程序员,每天促使我去上班的动力就是对编程的乐趣和激情。但是为了激发乐趣并获得永恒的快感,我们需要学习和遵守一些基础知识以成为一名优秀的程序员。当然我总结的这些东西没有那么神,你说你要想学了之后就一定可以成为优秀程序员,那是不可能的。这只是从我...
阅读全文
摘要:DelphiXE2内存加模块升级版.支持32位和64位模块.已转至新的博客 http://www.raysoftware.cn/?p=51很多年以前写过内存加载DLL的一片技术.http://blog.csdn.net/wr960204/article/details/2134157上几天有人说找遍...
阅读全文
摘要:function IsWin64: Boolean; var Kernel32Handle: THandle; IsWow64Process: function(Handle: Windows.THandle; var Res: Windows.BOOL): Windows.BOOL; ...
阅读全文
摘要:关掉64位系统中32位程序的目录重定向在64位Windows系统中运行的32位程序会被系统欺骗.例如windows\system32的目录实际是windows\syswow64目录的映射.program files实际是program files(x86)的映射.注册表的hkey_local_mac...
阅读全文
摘要:每次安装都不一样,而且有时候挺麻烦的,所以记下来。我这次安装过程是这样的:0. 修改Source\Delphi7\Make.bat,填入正确的IdeDir1、找到source\delphi7目录,所有的DPK文件都在这里。2、编译DAC 运行包,即dac70.dpk。3、如果是D6或D7,编译DAC...
阅读全文
摘要:vc2005中没有classwizard这个命令了 2005下怎么添加鼠标事件vc2005中没有classwizard这个命令了取代classwizard 中的添加消息映射,添加类,等等的功能主要在属性窗口中鼠标事件不要手动添加,最好使用下述方法比如添加消息映射。你选定了一个类后,在属性点击右键 选...
阅读全文
摘要:传给未分配内存的const char* (LPCTSTR)指针. CString cstr(asdd); const char* ch = (LPCTSTR)cstr; ch指向的地址和cstr相同。但由于使用const保证ch不会修改,所以安全.2.传给未分配内存的指针. CSt...
阅读全文
摘要:function RunAsAdmin(hWnd: HWND; filename: string; Parameters: string): Boolean;{ See Step 3: Redesign for UAC Compatibility (UAC) http://msdn.mi...
阅读全文
摘要:Delphi 7事件的多处理机制Allen Tao2007-08-19 首先解释一下这个题目。在我使用Delphi 7的过程中发现,一个对象的事件只能被一个过程处理。如果多次给这个对象的事件赋给处理事件的过程,最后真正处理事件的将是最后赋值的那个过程。例如,有类TMyClass中定义了一个事件On...
阅读全文
摘要:最近一段时间似乎流行源码分析:)我也来谈谈在过去一段时间里对VCL源码的分析方法方面的一点体会,本文将不探讨VCL类库的构架和设计模式方面的东本,只是以我们常见的控件属性/方法的实现过程作简单的说明,希望对初学者有所帮助。VCL分析方法例:TButton.Caption属性的由来(本文仅以此献给DE...
阅读全文
摘要:进程之间通讯的几种方法:在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有 使用内存映射文件 通过共享内存DLL共享内存 使用SendMessage向另一进程发送WM_COPYDATA消息比起前两种的复杂实现来,WM_COPYDATA消息无疑是一种经济实惠的一中...
阅读全文
摘要:如何控制其他程序窗体上的窗口控件 用我的方法来控制其他程序窗体上的窗口控件,必须先了解什么是回调函数。我的理解是这样的:回调函数写出来不是自己的程序去调用的,反而是让其他的东西去调用,比如windows操作系统,比如其他的程序等等之类的。但是什么时候被调用却不知道了。回调函数一般是按照调用者的要求定...
阅读全文
摘要:如何获取多核、多cpu系统中指定cpu的序列号作者:SkyJacker(转贴请保持完整并注明作者和出处)http://www.cnpack.orgCnPack IV QQ Group: 1309702007-01-23感谢:Passion,Bahamut,早安,空气,SkyJacker...没有Ba...
阅读全文
摘要:发送消息执行记事本的“另存为”菜单功能procedure TForm1.FormCreate(Sender: TObject);var hNotepad: Cardinal;begin hNotepad := FindWindow('Notepad', nil); if hNotepad > ...
阅读全文
摘要:Qualcomm ARM CPU与Intel x86 CPU性能比较随着移动互联网时代的到来,Qualcomm(高通)、Texas Instruments(德州仪器)等基于ARM架构的CPU受到越来越多人的关注,而昔日王者的Intel x86架构由于功耗问题,在移动互联网似乎举步维艰。Intel x...
阅读全文
摘要:最快速度找到内存泄漏许式伟2006年11月某日内存管理是C++程序员的痛。我的《内存管理变革》系列就是试图讨论更为有效的内存管理方式,以杜绝(或减少)内存泄漏,减轻C++程序员的负担。由于工作忙的缘故,这个系列目前未完,暂停。这篇短文我想换个方式,讨论一下如何以最快的速度找到内存泄漏。1、确认是否存...
阅读全文
摘要:深入解析SendMessage、PostMessage 本文将使用C++语言,在MFC框架的配合下给出PostMessage、SendMessage等的使用方式与使用不当造成的后果(讨论均针对自定义的消息进行)。如有什么错误,欢迎指正。 写过Windows程序的同学都知道PostMessage、Se
阅读全文
摘要:SendMessage、PostMessage原理 本文讲解SendMessage、PostMessage两个函数的实现原理,分为三个步骤进行讲解,分别适合初级、中级、高级程序员进行理解,三个步骤分别为: 1、SendMessage、PostMessage的运行机制。 2、SendMessage、P
阅读全文
摘要:作为Python开发者,你迟早都会用到图形用户界面来开发应用。本文将推荐一些 Python GUI 框架,希望对你有所帮助,如果你有其他更好的选择,欢迎在评论区留言。 Python 的 UI 开发工具包 Kivy Kivy是一个开源工具包能够让使用相同源代码创建的程序能跨平台运行。它主要关注创新型用
阅读全文
摘要:多态性与将实现多态的函数的访问限定符没有任何关系,private 函数仍然可以实现多态,它的指针仍然位于vtbl中,只不过该函数的多态一般只能在基类的内部由其他非虚函数调用该函数的时候反映出来,访问限定符仅仅限制外部对类的成员的访问权限,它并没有破坏以下规则:通过基类指针或引用调用成员函数时,如果该...
阅读全文
摘要:http://www.oschina.net/news/57811/open-web-not-died?p=2#comments浏览器是为浏览文档设计的,它的界面布局其实只有从上至下的流布局一种,浏览器的实现目标也不是为了创建多好的交互界面,而是为了怎么能显示篇甚至要滚几百屏的文章!--------...
阅读全文
摘要:Canvas.TextOut真是好用,Printer也实在好用:procedure PrintTStrings(Lst : TStrings) ;var I, Line : Integer;begin I := 0; Line := 0 ; Printer.BeginDoc ; // T...
阅读全文
摘要:一直都非常喜欢渐变色的界面,但是没想到漂亮的渐变Form原来这么简单。。。实在是没想到。。。看来我不仅技术水平低,脑袋里的创意也是空空如也。。。-----------------------------------------------------------------------------p...
阅读全文
摘要:与我研究VCL框架代码的原因一模一样:就是N年了,感觉自己还是没有掌握Delphi,惊叹别人各种各样神奇的效果,自己却不会,更不知为什么这样做,离高手的距离还有十万八千里。而且编程的时候,就像侯捷说的那样:自己只是像傻子一样地东一个按钮,西一个按钮,东编一点码,西编一点码,很愚蠢,却又不得不这样做。...
阅读全文
摘要:手工找出来,对比一下,有助于VCL框架的理解。-------------------------------------------------------------------------------------------- 才注意到,所有消息处理函数都是私有的,为什么呢?问题:其子类会继承它
阅读全文
摘要:把Message转换成String注意,这里欠缺CM消息和CN消息,因为它们不是系统消息,不经过Dispatch API转发,但是可以把它们写在WndProc里,这样SendMessage送来的消息也可截获,或者Dispatch里,这样动态消息也可统统截获。另外就是要把VCL标准控件里,凡是改写了W...
阅读全文
摘要:好多当母亲的,其实就是浆糊脑袋一方面高喊着男女平等,一方面在灵魂上矮化自己的女儿。无论到什么时候,作为一个年轻的生物,勇猛精进的精神是少不了的,不分公母。靠山山倒,靠人人老,无一例外。给自己的孩子预设一个宠物的格局,其实是愚蠢。人没有前后眼,一秒之后的事情都无法预测,何况二三十年后呢。有那个资源,不...
阅读全文
摘要:软件开发是什么?他是一种知识与智慧的结晶。是人类最高智慧的代表。如果软件开发沦为复制、简单再包装,没有自己的原创。那么他就必然走向衰落。我们来分析一个案例:曾经最伟大的软件公司,宝蓝公司走向衰落的历程,希望能带给我们一些启示。宝蓝公司创造了Pascal系列超越C语言的神话。首个实现了内存内编译的编译...
阅读全文
摘要:留个爪,稍后学习选择编译器nasm?fasm?yasm?还是masm、gas或其他?前面三个是免费开源的汇编编译器,总体上来讲都使用Intel的语法。yasm是在nasm的基础上开发的,与nasm同宗。由于使用了相同的语法,因此nasm的代码可以直接用yasm来编译。yasm虽然更新较慢,但对nas...
阅读全文
摘要:感觉讲的都很有道理:——我们也是使用的MySQL的开源版本,所以在数据性一致性方面和其它公司遇到的问题实际上是一样的。我们 遇到的问题,别人也会遇到。遇到问题不可怕,可怕的是没有那颗解决问题的心和解决问题的能力。首先,我们有非常强大的开源团队,他们对MySQL非常熟 悉,有能力根据需要定制符合我们需...
阅读全文
摘要:TPaintBox是一个图形控件,继承于TGraphicControl,并且只有聊聊几个函数和属性,主要就是Canvas和Paint函数,都在这里了: TPaintBox = class(TGraphicControl) private FOnPaint: TNotifyEvent; p...
阅读全文
摘要:本站所有文章由本站和原作者保留一切权力,仅在保留本版权信息、原文链接、原文作者的情况下允许转载,转载请勿删改原文内容, 并不得用于商业用途。 谢谢合作。原文链接:动态语言切换(续)-designer中的retranslateUi(带源码) 前篇动态语言切换 文中提到了动态切换语言的一点技巧。其实在d
阅读全文
摘要:开发人员毕竟是少数,考虑怎么把软件买给应用人员,这个市场才大,delphi 本身开发人员就少,又都是穷人(真正的大大都在闷声发大财,自己做解决方案了,不会买你的)还不如做应用产品去售卖,那样市场还大一些。回复那些个质疑微软不断推新的同志:不推新系统如何赚钱?更主要的,现在技术日新月异,不升级等待其他...
阅读全文
摘要:Delphi是座宝山,有待挖掘1. VCL源码是座宝山,把纷繁复杂的Windows编程封装到短短几个类里,不超过8000行代码,还额外包括许多其它的技巧2. RTL是座宝山,方便程序员使用底层运算,不必自己从头开发,不过这一点倒不是Delphi独有,其它语言也都有的特性,甚至更多,比如C++和Pyt...
阅读全文