pascal

Freepascal 中的正则表达式 - 无法识别的修饰符:Pos 15

我在 Delphi 中使用正则表达式来解析 M3U 文件和 M3U 文件中的标签。大多数“标签”的格式为 tag-name="value" 当我在 Delphi (10.1-10.3) 中使用以下正则表达式时,它工作正常: (?<=x-tvg-url=")(.*?)(?=") 但在 freepascal (OSX Lazarus V2.0.8) 中我不断收到错误: Unrec... »

如何从 Delphi 的 Richedit 中获得首次输出?

当我的代码输出到富编辑时,我遇到了问题。当我单击按钮计算所有内容然后显示所有内容时,它不会输出生成的 ClientNum 和 Price。但是,当我之后第二次单击该按钮时,它会毫不费力地输出所有内容?我的代码是否有问题,或者可能是外部的东西,例如影响输出的防病毒软件? 图片来说明我在说什么: 我的代码: type TfrmTourBooking = class(TForm) ... »

帕斯卡:变量 i:1..10;

我有这部分代码。我的问题是变量 i: 1..10; 是什么以及我要声明什么。谢谢 type Str25 = String[25]; TBookRec = Record Title, Author, ISBN : Str25; Price : Real; End; Var BookRecArray : Array[1..10] of TBookRec; tempBookRec : TBoo... »

如何在帕斯卡中看到 VMT?

我可以在 FREE Pascal 中以某种方式查看 VMT 表吗? 如果 VMT 表在通过遗传连接的两个对象中具有相同数量的项目,我很感兴趣? 例如在这个模型中,VMT 表中的内容是什么? 所有函数或更多函数是否会有一个表([Ob1 AND Ob2] 之间的表和 [Ob2 AND Ob3] 之间的表)? 表格中有什么? Ob1 = object constructor Init; fun... »

Delphi 连接到 Azure Redis 缓存

我成功设置了 Azure Redis 服务器(按照这些步骤 [https://docs.microsoft.com/en-us/azure/azure-cache-for-redis/cache-dotnet-how-to-use-azure-redis-cache][1])。我的问题是如何将我的 Delphi 应用程序连接到 Azure Cache for Redis?我正在使用 Delphi ... »

x86-64 上的 Delphi SizeOf(NativeInt) 与 C sizeof(int)。为什么大小差异?

前言 所以在做了很长一段时间的纯 C 工作后,我回到了 Delphi,发现 Delphi 中有一些新东西。一个是 NativeInt。 令我惊讶的是,我发现 Delphi 和 C 处理它们的“本机整数”1 类型对于 x86-64 是不同的。 Delphi NativeInt 似乎表现得像 C void * 和 Delphi Pointer,这与我对名称的期望相反。 在 Delphi Nati... »

c

加密初始化向量失败

我遇到了一个奇怪的问题,我正在使用 cfb 模式的 aes 加密。进展顺利,我已经用固定 IV 测试了加密。但是当我使用随机 IV 时,问题就出现了。我去详细说一下。 function Random16DigitsString: AnsiString; var i: Integer; c0: byte; begin Randomize; c0:=ord('0'); SetLeng... »

使用 ADOTable.Sort 对 DB 进行排序时如何刷新 StringGrid 中的数据

我在 Windows 的 Firemonkey 应用程序中有一个 TStringGrid,我使用 LiveBindings 连接到数据源。 DataSource 链接到 ADOTable。当我使用 ADOTable.sort 时,网格中的数据似乎只对第一行而不是整个表/网格进行排序。 有谁知道如何刷新整个网格,或确保所有数据都已排序。 ADOTable.filter 刷新整个网格,为什么排序... »

如何访问 Sender 参数所引用的组件的属性(触发事件的组件)

我是 delphi 和 pascal 的新手,想知道是否有办法获取/访问 Sender 在过程中引用的组件的属性。 更具体地说,我想创建一个更改标签的标题属性的过程,该标签是 Sender 引用的组件。 我想这个过程看起来像: procedure TForm1.LabelEdit(Sender: TObject); begin Sender.caption := 'Sample Text'... »

异步播放单独 MIDI 消息的最佳实践?

我已将 MIDI 文件解析为一组音符(键、速度、时间,还有 MIDI 文件的速度及其变化事件)。我需要在 GUI (LCL) 应用程序中异步播放它们(我不能使用 MCISendString,因为我需要处理这些消息)。问题是,在 MIDI 中通常有数千个音符。您认为播放它们的最佳方式是什么? 我有一些想法,但它们速度慢且不切实际: 使用等待(Sleep 或Delay)指定时间量并播放音符的函数... »

Windows Server 2012R2 中的 Inno 安装文件执行不起作用

我正在尝试通过 Windows Server 2012R2 机器中的 inno setup 安装 SQL Server,但退出代码“进程退出代码:1”失败。 相同的设置在 Windows 2008R2 和 Windows 7 机器上工作正常。我没有收到任何有关失败的错误提示。当使用参数调用可执行文件时,安装程​​序终止。日志 sn-p 在下面可用。 2015-07-15 16:47:38.73... »

如何比较 Pascal 中的 3 个数字?

我是新手 我需要如何在 Pascal 中比较 3 个数字。 这是我目前尝试过的 BEGIN max:=A; IF B>A THEN max:= B; IF C>B THEN max:= C; END; 但是当我选择例如A = 5 , B=2 , C=4时,输出是4,但应该是5。问题出在哪里? 最后我要writeln('大数是',max); ... »

在 Turbo Pascal 中通过汇编对 QB 4.5 的“rset”进行编程

我在 Turbo Pascal 中使用汇编程序编写一个过程,以完成 QB 4.5 中的“rset”语句。 "Rset" 将把字符串与变量中的最后一个字节对齐,这意味着字符串将在变量的末尾保存在变量中,而不是保存在第一个字节中。这是我编写的代码,但我没有看到任何反应: procedure rset(var s:string); var s_copy:string; index, s_size:in... »

Pascal中如何反向单链表?

program uka3; type itemptr = ^item; item = record data: integer; next: itemptr; end; var first, tmp: itemptr; n: integer; begin first := nil; while not See... »

在记录中使用来自 TStringGrid 的数据

我在 Pascal 中创建了一个记录类型 TTableData,用于存储来自 TStringGrid 的信息以供以后使用: TTableData = record header: String[25]; //the header of the column (row 0) value : String[25]; //the string value of the data n... »

在运行时为delphi中的后台应用程序传递参数

我正在编写一个启动命令提示符启动应用程序的程序,在启动应用程序运行时,启动应用程序会询问许多问题,例如按 1 读取或按 2 写入。但我总是会从该应用程序。我总是想将 2 传递给它。但问题是我怎么知道后台启动应用程序问了我一个问题并且我应该动态地回复适当的答案? ... »

真正的 C 静态局部变量替换?

只是试图在 ObjectPascal/Delphi 中实现与 C/C++ 静态局部变量类似的功能。 让我们在 C 中使用以下函数: bool update_position(int x, int y) { static int dx = pow(-1.0, rand() % 2); static int dy = pow(-1.0, rand() % 2); if (x... »

我可以在 pascal 中定义自己的字符串类型吗?

我读过我不能真正动态地分配一个帕斯卡数组,但我也在考虑实现一个字符串结构。 在 C 语言中,我会通过创建一个 struct 来解决它,其中包含一个指向字符数组(包含字符)、一个长度整数和一个大小的指针。然后,当它需要调整大小时,我会 malloc char * 和 realloc 它。 typedef struct { size_t size; size_t length; ... »