草庐IT

delphi-xe8

全部标签

windows - 适用于 Windows 和 Linux 的 Delphi

我正在用Delphi(RFID)开发一些迟早要在Linux上运行的软件,我可以使用什么好的选项,这样我就不必从零开始?我看过Embarcadero选项,但不是免费的!谢谢! 最佳答案 虽然我同意Lazarus/FreePascal是可行的方法,但交叉编译可能很难正确设置。因此,您可以免费查看CodeTyphon。.是一款强大的基于Lazarus/FreePascal的RAD/IDE等跨平台原生Delphi一键安装包。下载后几分钟即可开始编码。CodeTyphon已经支持4个CPU/OS主机(Win32、Win64、Linux32、L

linux - 与使用 Delphi 10.2 的 Linux 的 InterlockedExchangeAdd 等效)

Delphi10.2(支持Linux)有一个跨平台函数AtomicExchange,相当于WindowsInterlokekdEchange。到目前为止一切顺利...我必须使用没有等效AtomicExchangeAdd的InterlockedExchangeAdd移植Win32代码。我的问题是:在为Linux编译时,我可以使用什么来替换InterlockedExchangeAdd? 最佳答案 System.SysUtils.pas中有此函数的隐藏实现:functionAtomicExchangeAdd(varAddend:Integ

linux - 如何在 Linux 上重新配置 Oracle 10g xe

我已经从linux上的deb文件安装了Oracle10gxe,然后开始使用这个终端命令对其进行配置sudo/etc/init.d/oracle-xeconfigure但是配置完成后我忘记了密码,所以当我使用之前收到的命令时,如何在重新安装后重新配置它OracleDatabase10gExpressEditionisalreadyconfigured谢谢, 最佳答案 删除/etc/sysconfig/oracle-xe然后是/etc/init.d/oracle-xeconfigure 关于

mysql - Delphi:如何检查 MySQL 是否安装在 Windows 机器上

我正在为我的Windows操作系统程序开发安装程序。我希望安装程序检查MySQL是否已安装,以及是否在安装结束前静默安装MySQL。如何检查MySQL是否已经在装有delphi的计算机上? 最佳答案 关于MySQL服务器:正如@Shirish11所说,您可以检查HKLM\SOFTWARE\MySQLAB。但这并不能保证任何事情,因为此注册表项是可选的。MySQL确实不需要像SQLServer那样的任何“复杂”安装过程。您可以下载MySQL作为安装程序,只是一个ZIP存档。在最后一种情况下,将不会创建注册表项。与服务类似。使用mysq

Embarcadero XE5 中的 Android NFC

试图让NFC在EmbarcaderoXE5中的Android上运行。从以下内容开始:https://forums.embarcadero.com/thread.jspa?threadID=97574这似乎正在工作。现在想为NFCIntent注册回调Java方法:1.Registercurrentactivityasalistener...2.ReceiveIntent@OverrideprotectedvoidonNewIntent(Intentintent){    if(NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getActio

android - Delphi XE5 从右到左的语言不会像在 android 中那样出现

正如标题所说,来自RTL语言(如波斯语或阿拉伯语)的文本在android中显示效果不佳例如,单词“سلام”显示为“مالس”。即使在文本输入中也会出现此问题(我认为它们是native的,并且nativeandroid文本框支持)有没有办法解决这个问题? 最佳答案 缺乏双向和字形整形支持是knownrestrictionoftheFireMonkeyplatform,在所有目标(包括Windows和MacOSX)上。我们将不得不等待Android的“native控件”作为FireMonkey的第三方组件,就像iOS中存在的一样-请参

android - 如何在 Android 中使用 Delphi XE5 发送短信

有人知道如何让它工作吗?我得到的最接近的是下面的代码,但没有成功。起初,当它告诉您需要SEND_SMS权限时,它给了您一些希望。但是在你设置了这个权限之后,什么都没有发生!usesAndroidapi.JNI.JavaTypes;procedureTForm1.Button1Click(Sender:TObject);varsmsManager:JSmsManager;smsTo,smsFrom:JString;beginsmsManager:=TJSmsManager.JavaClass.getDefault;smsTo:=StringToJString('552199999999'

delphi - 在 HostApp 和 DLL 之间预分配内存

我有一个提供解码功能的DLL,如下:functionMyDecode(Source:PChar;SourceLen:Integer;varDest:PChar;DestLen:Integer):Boolean;stdcall;HostApp调用“MyDecode”,并传入Source、SourceLen和Dest参数,DLL返回解码后的Dest和DestLen。问题是:HostApp不可能知道解码后的Dest长度,因此不知道如何预先分配Dest的内存。我知道可以将“MyDecode”拆分成两个函数:functionGetDecodeLen(Source:PChar;SourceLen:

delphi - Delphi字符串是不可变的吗?

据我所知,字符串在Delphi中是不可变的。我有点理解这意味着如果你这样做:string1:='Hello';string1:=string1+"World";第一个字符串被销毁,你得到一个对新字符串“HelloWorld”的引用。但是,如果您在代码周围的不同位置使用相同的字符串会发生什么?我分配了一个字符串哈希来标识多个变量,例如,“更改”由该更改的属性的哈希值标识。这样我就很容易检查“更改”是否相等。现在,每个散列都是单独计算的(并非所有属性都被考虑在内,因此即使它们在某些值上不同,也可以分开实例)。问题是,Delphi如何处理这些字符串?如果我计算将散列分隔为相同的10字节长度字

Delphi 的 Sharemem - 不需要时

我知道当我在DelphiAPP和DelphiDLL之间共享strings时,我需要在app和dll项目源中添加Sharemem作为第一个使用单元子句。但是,如果dll导出函数只接受Pchars但在我使用strings的某些dll方法中,我是否也应该使用sharemem?让我展示一个示例代码:procedureShowMyCustomMessage(aMessage:Pchar);varvUselessString:string;beginvUselessString:=aMessage;ShowMessage(vUselessString);end;exportsShowMyCusto