delphi-2007相关内容
我想知道,Delphi的RTTI中是否有任何与MemberwiseClone在C#中一样的原型模式的简单实现。 我看到这个模式的一些Delphi实现,其中正在创建一个新对象(TMyObject.Create),它的属性分配了原型对象的值。我可能是错的,但是如果我们以相同的基本方式创建对象,我看不到模式的好处。 谢谢。 解决方案 没有内置的内容会为您执行深层克隆。我相信你可以根据新的
..
我正在试图优化一个具有这个结构的代码: while(i> 0)do begin Dec(i); 这看起来效率不高,所以我试图这样做: while(Dec(i)> = 0)do begin 这不行,因为Dec是一个过程而不是一个函数。 所以我将其重写为: procedure Withloop; var ....
..
这是否意味着我不能在delphi 2007和2009之间共享一个表单? 解决方案 是的。除非您从DFM中删除未在Delphi 2007中发布的属性,否则是不可能的。
..
我有一个DLL,其中有一个函数返回一个pchar。 (为了避免使用borlndmm)我最初做的是将一个字符串作为pchar并返回 结果: = pChar(SomeFuncThatReturnsString) 但是我得到了预期的结果90%的时间,其他时候我什么也不会回来 然后我想到我需要为pchar分配内存,这样做我的原始方式是将pchar指向内存,而不是总是当这个函
..
我有Delphi 2007代码如下: procedure WriteString(Stream:TFileStream; var SourceBuffer:PChar; s :string); begin StrPCopy(SourceBuffer,s); Stream.Write(SourceBuffer [0],StrLen(SourceBuffer)); 结束
..
我的程序需要从具有随机访问权限的大型二进制文件读取块。我有一个可能有几千个条目的偏移量和长度列表。用户选择一个条目,程序寻求偏移并读取长度字节。 程序内部使用TMemoryStream存储和处理从文件读取的块。通过TFileStream读取数据,如下所示: FileStream.Position:= Offset; MemoryStream.CopyFrom(FileStream
..
我想做这样的事情: Result ='MyString'in [string1,string2,string3,string4]; 这不能与字符串一起使用,我不想这样做: / p> Result =(('MyString'= string1)or('MyString'= string2)); 另外我认为创建一个StringList来做这个太复杂
..
背景 我在7名开发人员和2名在物流系统上工作的测试人员的团队工作。 我们使用Delphi 2007和modeldriven开发,使用大胆的Delphi 作为框架。 该系统目前已经生产了约7年,拥有大约1,700万行代码。 我们在4-5周之后发布到生产,几乎每个版本之后,我们必须为我们没有发现的错误做一些补丁。这当然是对我们和客户的烦恼。 当前测试 解决方案当然是更自动的测试。目前我
..
几周前,我遇到了一个似乎没有逻辑解释的问题。我正在使用Delphi 2007使用AlphaControls和WebBrowser组件放置在表单上构建应用程序。 TWebBrowser 从Web上获取横幅并将其显示在用户界面中。不好的是,一旦显示有横幅的表单,我得到“无法获取OLE控件窗口句柄”,而浏览器正在窗体外部显示,在左上角桌面的角落。 我基本上一直在尝试弄清楚,但是调试器没有提供太多关
..
如何使用Delphi为MySQL创建UDF? 有没有人有任何代码模板? 我希望将代码模板集成到Delphi版本(2007和更高版本)中,所以我需要这些模板可以使用和不支持Unicode。 解决方案 对于初学者,Google透露: 文档 论坛帖子 一个示例 您需要创建一个带有几个导出函数的DLL,如下所述。
..
我正在使用Delphi 2007,并想知道是否有一种简单的方式来计算字符串在另一个字符串中发生的次数。任何内置函数可以使用? 示例: “如何”发生一次在字符串“你好吗?” “do”在字符串“你好吗?”中出现两次? 解决方案 function Occurrences(const Substring,Text:string):integer; var offset:in
..
我有一些unicode .html文件,我想显示在一个THtmlViewer组件,在Delphi。 我似乎无法说服代码工作,只是做'.LoadFromFile' - 我首先需要将unicode文件加载到流中,然后以某种方式转换? Delphi 2007,THtmlViewer v9.45 我没有对unicode文件做任何事情,或者THHTMLViewer, 解决方案 好的
..
我熟悉 Jeff Atwood关于错误总是程序员错误的文章。 a>,但我相信我真的真的发现了一个Delphi .pas文件中的错误。 具体来说,我使用的是Delphi 2007,错误是DBCommon.pas文件的第955行,我的机器位于这里: C:\program files\codegear\ rad studio\5.0\source\Win32\db\DBCommon.pas
..
我有一个Base64二进制字符串,它是由第三方供应商发送给我们的XML文档的一部分,我希望能够将其保存回原始文件格式(jpg)。 使用这个问题接受的答案”将base64字符串作为使用php的二进制文件保存到磁盘“我可以很少的努力将字符串保存到jpg,所以我知道字符串是一个好的形式,是一个JPG文件。 但是如何在Delphi 2007中执行此操作? 在网上看到我发现了一个关于如何将
..
情况很简单。我创建了一个复杂的Delphi应用程序,它使用几种不同的技术。主要应用是一个WIN32模块,但是有几个部分被开发为.NET程序集。它还与Web服务通信或从特定网站检索数据。它将大部分用户数据保留在MS Access数据库中,并在注册表中附加一些其他设置。内存中,所有数据都会在XML文档内部转换,偶尔会将其保存到磁盘中,以防系统崩溃。 (从而允许用户恢复他的数据。)XML文件中还有一些数
..
如何获取有关Windows操作系统类型的信息?是32bit还是64bit?我如何以编程方式获取这些信息? 解决方案 您需要使用 GetProcAddress()来检查 IsWow64Process() 函数在运行时,如下所示: 函数Is64BitWindows :布尔值 type TIsWow64Process = function(hProcess:THandle; var
..
我们的工作应用程序是一个超过3000个单位的巨大项目,重约350万行代码。 ...或者至少是当我们正在D2007进行编译。我们最近更新到D2010,现在如果我们运行完整版,行数终于停止在490万左右。相同的DPR,相同的代码基础,一切都一样,但是编译器在构建周期中运行的代码量多达40%,而这里没有人知道为什么。 只是为了使事情更加混乱,建成后,我们可以在IDE中的Project - >
..
我有一个Delphi 2007应用程序,具有一个具有FindFile Common AVI的TAnimate控件。当应用程序在Windows XP上运行时,它可以很好地工作,但Windows 7上没有任何显示。我听说现在需要自己的线程,但我不确定。 解决方案 你必须添加单元ShellAnimations给您项目或从组件面板的Win32选项卡添加组件 TShellResources 。 (在
..
解决方案当使用Delphi 2007和Indy 9时,最新的OpenSSL库可以加载什么? 您需要以下两个DLL: libeay32.dll ssleay32.dll 您可以从开源组织 OpenSSL.org ,但是您必须自己编译DLL。 Indy为每个版本的Indy和OpenSSL维护一个已编译的二进制文件的网站(请参阅 indy.fulgan.com/SSL和 indy.ful
..
我可以使用通知区域中的图标枚举应用程序(handle,pid,path),我可以控制图标的位置,但是我无法获取工具提示。 如何枚举系统管理员图标,包括工具提示? 解决方案 这是我的方法,用windows xp和delphi 2010,如果你使用的是一个版本的delphi,它不支持unicode make shure你将读取的字符串转换成ansi CommCtrl; 函数
..