草庐IT

c++ - 获取 Windows 句柄的 WNDPROC

是否存在任何Windowsapi函数来检索Windows句柄的WNDPROC?提前致谢。 最佳答案 使用GetWindowLongPtr(hwnd,GWLP_WNDPROC)。警告:对于32位系统,GetWindowLongPtr实际上是#defined到GetWindowLong,因此为了将它导入Delphi,您可能需要改用GetWindowLong。同样,GetWindowLongPtr本身是#defined到GetWindowLongPtrA或GetWindowLongPtrW(对于非unicode和unicode目标),因此

windows - 所有 Windows 版本都支持 Int64 吗?

如果我使用Int64类型的变量,它是否适用于所有Windows版本:win95、98、2000、nt、xp、vista、win7?无论是什么操作系统,它是32位还是64位?不管他们使用什么CPU?我只是想确定,我的程序可以在所有Windows版本上运行。 最佳答案 语言提供的数据类型的大小不受操作系统或硬件平台的限制。我可以在32位平台上使用64位整数(或者16位、8位或11位,就此而言)。 关于windows-所有Windows版本都支持Int64吗?,我们在StackOverflow

windows - 最新版本 Chromium Embedded Framework 3

在哪里可以找到适用于Delphi的ChromiumEmbeddedFramework3的最新版本?我使用TortoiseSVN从这个页面下载了它:http://code.google.com/p/dcef3/因为CEF1出的问题太多,而且是很老的版本,有24版本的下载,但是最新的版本是823,请问哪里可以找到Delphi-XE2的最新版本?非常感谢。 最佳答案 这里提到了三个项目:chromiumembedded,最新版本996delphichromiumembedded,最新修订147dcef3,最新修订24这是三个不同的项目。您

windows - Delphi 程序和 Windows 64 位兼容性问题

我有一些客户/候选人提示我的程序不能在他们的Windows764位版本上运行(已通过屏幕截图确认)。错误很奇怪,例如:inthetrialversioniamgettingaerrormessagewhenevericlickon\"mark\"\"delete\"\"help\".errormsgis:Accessviolationataddress0046C978inmodule\'ideduper.exe.\'readofaddress00000004windows7ultimate64bit.i7920@2.67GHz9gborram“标记”、“删除”和“帮助”只是TToolb

windows - 为什么以管理员身份运行时我的应用程序工作方式不同?

我有一个小型Delphi应用程序,它向LOCAL_MACHINE注册表写入一个key。当我使用具有管理员权限的用户在Windows7专业版上运行它时,它无法写入值,但是当我右键单击并选择“以管理员身份运行”时,它确实有效。代码是:varreg:TRegistry;beginResult:=false;reg:=TRegistry.Create;reg.RootKey:=HKEY_LOCAL_MACHINE;if(reg.OpenKey('Software\YepYep',TRUE))thenBegintryreg.WriteString('ProductKey',Trim(Produc

windows - Delphi项目的自动化构建工具

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭9年前。Improvethisquestion我有几个用Delphi7编写的项目,我正在寻找可以自动构建过程(包括包创建和上传到特定ftp位置)的工具。我想找到没有类似Ant的xml配置文件的native应用程序(即Rake或fabricate.py是很好的软件,但我不想这次使用它

windows - 当光标不在我的窗口中时,如何知道用户正在拖动某些东西?

我们都知道您可以为您的窗口实现拖放功能,以便它接受拖放操作,但我的问题是,如何检测正在进行的拖放操作其他窗口,例如,在Windows资源管理器中拖动文件?我想要做的是,当用户拖动文件时,我的隐藏窗口就会出现。谢谢! 最佳答案 您要求的内容不受native支持。在拖放操作期间,只有拖动的发起者知道操作正在进行,只有实际被拖过的窗Eloquent会收到操作可能发生的通知。我现在唯一能想到的选择是通过DLL中的SetWindowsHookEx()实现全局鼠标Hook,并让它跟踪用户何时按住左键并移动鼠标在源窗口之外。但是没有办法获得有关正

windows - Delphi SaveDialog 不显示

在使用DelphiXE6和ReportBuilder(link)开发并部署在Windows7计算机上的应用程序中,在屏幕上显示ReportBuilder报告后,用户可以选择将其打印到文件中。一个按钮允许用户选择保存文件的目录:/*ThissourcecodewasprovidedbyDigitalMetaphors;Icannotchangeit.*/SaveDialog1:TSaveDialog;...procedureTppPrintDialog.btnPrintToFileClick(Sender:TObject);beginifSaveDialog1.Executethenbe

windows - 默认打印机设置被忽略

使用WindowsPrintSpoolerAPI,我们可以打印出XPS文件。问题是打印后台处理程序忽略默认打印机设置。(我们已放弃尝试applyprintersettings。默认打印机设置就足够了。)例如...无论控制面板中的设置如何,打印输出始终是彩色的并且每页一张纸:黑白/彩色、双面/非双面、每张多页/每张单页。MSWord和Adob​​e等其他应用程序遵循默认打印机设置。我们使用的是DelphiXE2和Windows764位。此测试代码是自包含的,因此您可以将其粘贴进去进行测试...使用打印机名称填充组合框:usesPrintersComboBox1.Items.Assign(

windows - 调用 CreateObjectFromFile 时无效的 FORMATETC 结构

我正在使用Delphi7尝试将Word文档加载到OLEContainer中。该程序在终端服务(Windows2003)环境中运行。以下代码会为某些用户生成错误:procedureTForm1.Button1Click(Sender:TObject);beginOleContainer1.CreateObjectFromFile('c:\tmp\test.doc',false);end;这是一个简单的应用程序,在表单上有一个OLEContainer和一个按钮。c:\tmp\test.doc是Word2003文档。对于某些用户,此代码会产生错误InvalidFORMATETCstructu