相关疑难解决方法(0)

基本的Delphi类型如何相互关联?

Delphi长期以来支持一些基本的数字类型,我想知道它们是如何相互关联的.

在Delphi 2007中,我发现了这些声明(有些是冲突的,有些只是别名):

Types.pas:

DWORD = LongWord;
Largeint = Int64;
Run Code Online (Sandbox Code Playgroud)

getmem.inc:

DWORD = Integer;
Run Code Online (Sandbox Code Playgroud)

Windows.pas:

DWORD = Types.DWORD;
SHORT = Smallint;
UINT = LongWord;
ULONG = Cardinal;
LONGLONG = Int64;
TLargeInteger = Int64;
ULONGLONG = UInt64;
Run Code Online (Sandbox Code Playgroud)

这让我想到基本签名数字类型是SmallInt,Integer和Int64.无符号,有Byte,WORD和UInt64.但Cardinal和LongWord有什么区别?(顺便说一下,这些类型的原始和预期外壳是什么?)

是否有一个有符号8位整数(Int8)的类型?

// Int8 = ?unknown?;
UInt8 = Byte;
Int16 = SmallInt;
UInt16 = Word;
Int32 = Integer;
UInt32 = LongWord;
// Int64 already exists
// UInt64 already exists
Run Code Online (Sandbox Code Playgroud)

最后,我应该如何定义Int和UInt,特别是关于C/C++兼容性以及将来切换到其他平台(可能还有64位)?(当然,一个相关的问题是如何在64位Delphi中定义各种数字类型?)

delphi types

12
推荐指数
2
解决办法
2万
查看次数

Inno Setup Exec()函数等待有限的时间

在我的Inno安装脚本中,我正在执行第三方可执行文件.我正在使用如下Exec()功能:

Exec(ExpandConstant('{app}\SomeExe.exe'), '', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode);
Run Code Online (Sandbox Code Playgroud)

提到ewWaitUntilTerminated它等到SomeExe.exe不退出.我想等待10秒钟.

那有什么解决方案吗?

inno-setup

5
推荐指数
1
解决办法
5112
查看次数

如何在InnoSetup脚本中"触摸"文件?

如何"触摸"文件,即从InnoSetup(Pascal)脚本中将其上次修改时间更新为当前时间?

pascal inno-setup

2
推荐指数
1
解决办法
1065
查看次数

标签 统计

inno-setup ×2

delphi ×1

pascal ×1

types ×1