草庐IT

Delphi 12.0

全部标签

windows - Delphi Firemonkey Cross Platform - 传递 Windows 句柄的通用方法

我在我的第二个适用于Windows和OSX的Firemonkey应用程序中埋头苦干,慢慢地转换我的函数库以处理跨平台问题。我正在尝试创建一个通用的SelectDirectory函数,该函数将为Windows或OSX运行特定于平台的代码。我让SelectDirectory在两个单独调用的平台上工作得很好,但特定于Windows的平台需要hwndparent句柄才能运行。这是在IFDEFMSWINDOWS指令中运行的(就像OSX在其编译器指令中一样)。如何将通用句柄传递给此函数,或者如何引用Application.MainForm或可以在此函数内转换为Windows句柄的内容?我希望避免在

java - 我想在 Ubuntu 12.04LTS 中制作直接执行 jar 文件的 sh 文件

在Ubuntu12.04中(不工作)我创建一个sh文件并编写代码。@echooffjava-jarProgram.jar还允许执行权限。但是没有执行任何操作。在Windows中它工作正常。在Windows7中(工作中)我创建一个批处理文件并编写代码。@echooffjava-jarProgram.jar请帮助我做错了什么。 最佳答案 Ubuntushell脚本不能使用用于DOS命令脚本的@echooff。你需要这样的东西,#!/bin/shjava-jarProgram.jar第一行称为Shebang(#!是一种magicnumbe

windows - 如何使用 Windows 命令行将 12 小时格式的时间添加到文件名?

我需要具有12小时格式的文件名-从1到12(上午或下午可选)如下所示:myfile_2pm.txt我写了脚本,但它只适用于24小时格式,如果它有“1位”小时则崩溃,因为冒号:Hello>myfile_%time:~-0,2%.txt 最佳答案 @echooffsetlocalenableextensionscall:get12hhourecho%hour%echoThisisatest>myfile_%hour%.txtexit/b:get12houtputVarsetlocalenableextensionsfor/f"token

windows - 在配备 GeForce 960M 的笔记本电脑上初始化 D3D12 调试接口(interface)失败

当我尝试使用标志DXGI_CREATE_FACTORY_DEBUG调用D3D12GetDebugInterface或CreateDXGIFactory2时,调用在我的笔记本电脑上失败,但在我的台式机上却没有。其他调用在笔记本电脑上运行良好,我可以渲染东西——我只是无法初始化调试层。桌面有一个老式的GeForce650Ti,笔记本电脑是戴尔XPS15笔记本电脑(最新一代),它有一个GeForceGTX960M。两者都有最新的驱动程序(361.43)。有什么想法可能会出错吗?我在NVIDIA上发布了devtalkforum首先,但交叉发布到stackoverflow,因为NVIDIA官方论

windows - Delphi:自定义窗口菜单:需要 Msg.CmdType 和 $FFF0 说明

我正在对使用DelphiXE6开发的Windows应用程序做一些最后的润色。目前,我对窗口系统菜单感到困惑,我指的是当您单击左侧标题栏中的图标时出现的菜单。我定义了两个过程://thisinsertsoneadditionalcommandintothemenuprocedureInsertCommand(Sender:TObject);//thisisobviouslyahandlerofmouseclicksonthatmenuprocedureOnSysCommand(varMsg:TWMSysCommand);messageWM_SYSCOMMAND;定义如下:constALW

windows - 在 Delphi 2K9 中运行时禁用和启用组件。奇怪的问题

代码如下:procedureDisableContrlOL(constcArray:arrayofstring;ReEnable:boolean=False);//canbecalledfromVKP/RAW/GenerationclicksvarAComponent:TComponent;CompListDis,CompListEna:TStringList;beginCompListDis:=TStringList.Create;CompListEna:=TStringList.Create;fori:=Low(cArray)toHigh(cArray)dobeginACompon

delphi - DeferWindowPos 是否与 VCL 配合良好?

我正在考虑增加对DeferWindowPos的使用。到目前为止,我在一些简单的情况下使用它,并没有发现任何问题。你知道任何陷阱吗?FLeft/FTop/...字段没有正确更新或类似的事情? 最佳答案 DeferWindowPos应该不是问题,因为WM_WINDOWPOSCHANGED、WM_MOVE和WM_SIZE消息在移动/调整大小完成后仍会发送。DeferWindowPos的工作方式就好像用户移动窗口或调整窗口大小一样,VCL会跟踪所有更改并正确更新FLeft、FTop、FWidth和FHeight。

windows - delphi中的多种形式

在我的Delphi项目中,我想要一个“设置”按钮,单击该按钮会打开第二个表单(我认为这是正确的术语,我基本上想要打开一个新窗口)进行设置。当用户完成更改此新表单上的设置后,我希望表单在单击按钮时关闭。第一个“主”表单也需要能够访问用户输入的设置。因此,例如,如果我的程序由一个主窗体组成,计算“A”+“B”(A和B是整数变量),设置窗体允许用户设置A和B的值,我该怎么做? 最佳答案 如果您了解Delphi的对象模型,这并不难。表单是从TObject派生出来的对象,由DFM文件支持,以便更轻松地设置布局。它上面的控件是其他对象,默认情况

windows - 在没有 WNetAddConnection2 的情况下使用 Delphi 映射网络驱动器

最近我构建了一个GUI应用程序,可将网络连接映射到Windows中的驱动器。不幸的是,它使用WNetAddConnection2()调用来完成此操作。不幸的是,WindowsAPI在映射远程WebDAV连接方面表现不佳。它在Vista中似乎工作正常,除了在尝试启用SSL时,它在XP中不起作用,除非您指定一个文件夹(您不能将它映射到根URL。例如:http://mywebdavserver.tld)。SSL在XP中也不起作用。基本上,我发现使用WNetAddConnection2()非常不可靠。也就是说,有没有什么方法可以在不使用WNetAddConnection2()的情况下使用Web

windows - 我的 Delphi 7 应用程序在 Application.Initialize 上停止并且不返回到下一行

我在Delphi7上创建了一个应用程序。我的应用程序从昨天开始运行良好。我不知道昨天发生了什么导致我的应用程序在源代码中的Application.Initialize行停止并且在我跟踪程序时不返回到下一行。当生成的文件在另一台机器上正确运行时,我无法从widowsniether运行创建的可执行文件。这是编译器停止的代码:programInfo_Kiosk;usesSysUtils,Forms,...(someotherunits);{$R*.res}beginApplication.Initialize;Application.CreateForm(Tfrm_Main,frm_Main