我在退出我的应用程序时偶尔会遇到这个问题 - 我的应用程序正在通过网络运行 EXE。我知道这是按需加载部分 EXE 时的页面错误。
我也在 TDrawGrid 的 OnDrawCell 方法中观察到它,所以我很困惑这可能是如何导致页面加载的。此外,异常不断发生。
所以我的问题:
错误 C0000006 是否可能由其他原因导致?我对应用程序管理内存的方式进行了相当大的更改,尽管没有什么特别之处,而且我相信代码的行为。
如何让应用程序在启动时将其全部加载到内存中(在 Delphi 2006 中 - 我知道有针对更高版本的 Delphi 的指令)。
TIA
我需要创建一个独立于区域设置的应用程序(D2006),最重要的是所有日期格式必须相同.
对于乞求,我想用FormatDateTime('aConstantDefined')替换所有FormatDateTime('adateformate').此外 Application.UpdateFormatSettings和Application.UpdateMetricSettings应设置为False.
还有什么我应该做的/照顾吗?
LE:问题是我有2个不同的区域设置的用户,他们不想统一他们的设置.我知道这听起来很奇怪,但这是事实.所以,这就是我需要让我的应用程序完全独立于区域设置的原因.
在Java中,我们有类似的地方VarName.toString来描述var的名称.
我在Delphi中有一个代码,我需要实现相同的功能,因为我有一个record类型,我需要识别许多子字符串:
type
THierarchyAccess = String; // receive the user permissions from the MySQL DB
THierarchy = record
MOD_HIERARQUIA : THierarchyAccess; // 'BROWSE_ONLY', 'MANAGE', 'NONE'...
MOD_OPERADORES : THierarchyAccess;
MOD_ESTATISTICAS : THierarchyAccess;
MOD_AUDITORIA : THierarchyAccess;
MOD_HOMEPAGE : THierarchyAccess;
MOD_HOTSITES : THierarchyAccess;
MOD_MATRIZ : THierarchyAccess;
MOD_NOTICIAS : THierarchyAccess;
MOD_VISITANTES : THierarchyAccess;
...
end;
...
function TAccess.IsAccessPermited(apNeed, apHave: String): Boolean;
begin
// HERE I need to know not only the content of "apHave",
// but if it came from …Run Code Online (Sandbox Code Playgroud) Delphi TList.Sort()方法需要一个类型的回调函数参数function (Item1, Item2: Pointer): Integer;来比较列表项.
我想在回调函数中摆脱类型转换,并希望定义一个这样的回调函数:
function MyTypeListSortCompare( Item1, Item2 : tMyType ) : integer;
begin
result := WideCompareStr(Item1.Name, Item2.Name);
end;
...
MyList.Sort(tListSortCompare(MyTypeListSortCompare));
...
Run Code Online (Sandbox Code Playgroud)
但不幸的是,这会触发"无效的类型转换"编译器错误.
是否有可能在Delphi(2006)中正确地对类型指针进行类型转换?
我在 Java 中有这个简单的操作,其中字符串由换行符和中断符分割。
String i= "Holidays
Great.
Bye";
String []linesArray = i.split("\\r?\\n");
Run Code Online (Sandbox Code Playgroud)
我想在 Delphi 2006 中获得相同的结果。
使用以下步骤是否有效?
charArray[0] := '\\r';
charArray[1] := '\\n';
strArray := strA.Split(charArray);
Run Code Online (Sandbox Code Playgroud) 我在DBGrid(实际上是TMS的DBGrid)中保存/重新加载col宽度时遇到了困难.TMS包含保存/重新加载col宽度的内置方法,这些方法正常工作(我可以读取ini文件中的值).但是,我的代码中的某个地方会覆盖存储的值.我不太清楚如何确定col宽度能够调试问题.
网格最终连接到ClientDataSet文件.
在D2006中编译应用程序期间遇到错误时,是否有可能使编译器继续运行?我想知道它在应用程序中发现了多少错误.
我刚刚下载了ADSI,它似乎与Delphi Embarcadero XE4不兼容.
当我尝试编译其中一个示例时,我收到此错误:
[dcc32 Error] adshlp.pas(128): E2003 Undeclared identifier: 'NULL'
Run Code Online (Sandbox Code Playgroud)
这就是这条线:
varArr := NULL;
Run Code Online (Sandbox Code Playgroud)
怎么了?
我们有一个有问题的客户,我们的Delphi应用程序似乎没有启动.但我们不能在这里重现它.
然而,程序正在启动,但是立即以静默方式退出,错误代码为250477278.有人知道,这个错误代码意味着什么(以及定义的位置)?
编辑:
在我们的代码中我们有调用Halt(ErrorNumber),所以看起来,这个错误代码直接来自Delphi?
delphi ×10
delphi-2006 ×10
function ×2
adsi ×1
casting ×1
exception ×1
executable ×1
line-breaks ×1
newline ×1
page-fault ×1
split ×1
variables ×1