今天遇到一个很隐蔽的 Delphi 问题,不知做了什么,有一个功能总是不能使用,后来跟踪以下发现是因为 Screen.DataModuleCount 总是返回 0,而程序中一个函数正好要用到它。找来找去都没找到解决办法;
用来好多方法均没遇到这种情况,于是后面就使用了最土的土照,一个个单元排除法,最后在其中一个单元惹得祸,只要不加入这个单元到工程就OK,这下 Screen.DataModuleCount 也正常了。
    可是这个单元有什么魔法会导致这个问题呢,最后通过排查法找到,是由于Uses QClipbrd这个引用,导致的Screen.DataModuleCount=0,后面把这个QClipbrd单元引用去掉,就一切正常了。
这可能是 Delphi 的一个 Bug 吧!
05-11 18:18