我有一些客户/候选人提示我的程序不能在他们的Windows764位版本上运行(已通过屏幕截图确认)。错误很奇怪,例如:inthetrialversioniamgettingaerrormessagewhenevericlickon\"mark\"\"delete\"\"help\".errormsgis:Accessviolationataddress0046C978inmodule\'ideduper.exe.\'readofaddress00000004windows7ultimate64bit.i7920@2.67GHz9gborram“标记”、“删除”和“帮助”只是TToolb
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭9年前。Improvethisquestion我有几个用Delphi7编写的项目,我正在寻找可以自动构建过程(包括包创建和上传到特定ftp位置)的工具。我想找到没有类似Ant的xml配置文件的native应用程序(即Rake或fabricate.py是很好的软件,但我不想这次使用它
在使用DelphiXE6和ReportBuilder(link)开发并部署在Windows7计算机上的应用程序中,在屏幕上显示ReportBuilder报告后,用户可以选择将其打印到文件中。一个按钮允许用户选择保存文件的目录:/*ThissourcecodewasprovidedbyDigitalMetaphors;Icannotchangeit.*/SaveDialog1:TSaveDialog;...procedureTppPrintDialog.btnPrintToFileClick(Sender:TObject);beginifSaveDialog1.Executethenbe
我有一个遗留应用程序,其中包含一个包含我需要提取的数据的网格。我没有该应用程序的代码,并且无法通过正常方式(例如以编程方式选择所有单元格并将它们复制到剪贴板)从中获取数据。所以我决定按照“II.TheCreateRemoteThread&LoadLibraryTechnique”一节中的描述使用DLL注入(inject)http://www.codeproject.com/Articles/4610/Three-Ways-to-Inject-Your-Code-into-Another-Proces我的计划是将DLL加载到遗留应用程序的地址空间。让DLL从网格中读取数据并将它们写出(例
我需要从MSI数据库中打开一些表,读取它并使用Delphi在其中放置一些行(在我的示例中是Delphi7,但如果需要,允许使用其他版本)。例如,它看起来像ORCA。Msi必须打开,写入可以编辑的表并写入msi文件。默认情况下,Delphi无法打开MSI表,但我发现了一个JEDIWindowsAPI哪里存在像JwaMsi和JwaMsiQuery这样的库。但是我找不到文档或使用像这样的功能的例子functionMsiOpenProduct(szProduct:LPCTSTR;varhProduct:MSIHANDLE):UINT;stdcall;{$EXTERNALSYMMsiOpenPr
下面的代码可以获取系统空闲时间。functionIdleTime:DWord;varLastInput:TLastInputInfo;beginLastInput.cbSize:=SizeOf(TLastInputInfo);GetLastInputInfo(LastInput);Result:=(GetTickCount-LastInput.dwTime)DIV1000;end;是否可以单独获取键盘空闲时间?让用户移动他/她的鼠标——没关系。是否可以确定键盘闲置了多长时间? 最佳答案 您必须Hook到键盘事件。在Delphi中检查
我有几个.reg(Windows注册表)文件(由外部应用程序生成)需要合并到Windows注册表中。现在我正在使用ShellExecuteEx函数调用regedit.exe应用程序,将文件名作为参数传递(并且工作正常),但我想知道是否存在任何WinAPI函数或其他方式合并该文件,而无需调用regedit.exe应用程序。 最佳答案 我希望答案是否定的。通过winapi,您可以将文件作为.ini文件读取,并相应地进行适当的注册表修改。如果regedit.exe做的事情与此不同,我会感到惊讶。
目前DelphiXE只能在我的盒子上使用,我不知道Delphi2010/XE2是否引入了一些突破性的变化。请帮我更新以下定义:TVmt=packedrecordSelfPtr:TClass;IntfTable:Pointer;AutoTable:Pointer;InitTable:PFieldTable;TypeInfo:PTypeInfo;FieldTable:Pointer;MethodTable:Pointer;DynamicTable:Pointer;ClassName:PShortString;InstanceSize:Cardinal;Parent:PClass;{$IFD
我正在使用delphiXE。我正在开发一个来自TPanel的组件。TApGUITab=class(Tpanel)我通过处理WMKeyDown消息来处理按下事件,但是当我按下箭头键时它没有被调用,它将焦点设置到另一个控件而不是调用事件。我现在该怎么办? 最佳答案 这很简单。只需响应WM_GETDLGCODE消息并返回Message.Result:=Message.ResultorDLGC_WANTCHARSorDLGC_WANTARROWSorDLGC_WANTTABorDLGC_WANTALLKEYS;
我有一个问题。我有一个TTreeview后代,它可以在我自己的计算机上正常显示复选框,所有其他我已经测试过。TVS_CHECKBOXES使用SetWindowLong设置。在Loaded方法中,我使用StateIndex:=2;、Item.State:=TVIS_CHECKED等设置/维护检查状态到目前为止一切顺利。但是现在有人联系我说他的WindowsXPSP3上的TreeView复选框根本不显示。(他甚至向我提供了一张屏幕截图。)从程序行为来看,我可以说默认检查节点正在运行,因为客户描述中的其他程序的行为符合预期。我无法在任何地方找到描述的类似症状。我测试过的所有计算机都运行良好。