对于打印机的小精灵我该怎么办?
当我的程序启动时,用户报告了异常终止。堆栈跟踪是:
Loc 1: Classes.Get (3368, 2)
Loc 2: Behold (58, 18)
我以前从未观察到此问题,也没有其他用户向我报告过此问题,我的用户说到目前为止,这是他唯一一次遇到此问题。
我的程序中的第 18 行只是我的程序的 .dpr
中的 Application.Run
语句。
Classes
中的第 3368 行是以下错误语句:
function TList.Get(Index: Integer): Pointer;
begin
if (Index < 0) or (Index >= FCount) then
Error(@SListIndexError, Index);
Result := FList^[Index];
end;
表示某些列表索引超出范围。但我无法从中判断出是什么原因造成的。
我的用户是另一位程序员,他说他认为这就是所谓的“打印机小精灵”。
有谁知道打印机的小精灵是什么,这是否是我应该关心的事情,如果是,我将如何解决这个问题?
A user reported an abend right when my program starts up. The stack trace was:
Loc 1: Classes.Get (3368, 2)
Loc 2: Behold (58, 18)
I've never observed this problem before, and no other user has ever reported this to me, and my user said that so far, this is the only time he's had this.
Line 18 in my program is simply my Application.Run
statement in the .dpr
for my program.
Line 3368 in Classes
is the Error statement in:
function TList.Get(Index: Integer): Pointer;
begin
if (Index < 0) or (Index >= FCount) then
Error(@SListIndexError, Index);
Result := FList^[Index];
end;
which indicates some list index was out of bounds. But I cannot tell from this what might have caused it.
My user, who is another programmer, says he thinks this is something called a "printer's gremlin".
Does anyone know what a printer's gremlin is, whether this is something I should be concerned about, and if so, how would I fix this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
“Gremlin”一词可以追溯到第二次世界大战,当时人们将主要技术领域的问题归咎于 Gremlin,尤其是当飞机无缘无故坠毁或发动机突然停止工作时(“他们把 Gremlin 放进去了!”)。
对我来说,这个名字听起来像是“德国妖精”的缩写,但这只是我个人的解释。
毕竟,这不是你应该担心的。错误的实际原因可能是其他原因。
The term "Gremlin" can be dated back to World War II, where Gremlins were blamed for problems in mostly technical areas - especially when airplanes crashed without any cause or engines suddenly stopped working ("The've put the Gremlins in!").
For me, the name sounds like a short form for "German Goblin", but that is only my personal interpretation.
After all, it is nothing you should be concerned of. The actual reason for the error is probably something else.
由于另一个用户是程序员,我们可以忽略与打印机相关的一些基本内容,例如 Windows 上没有定义打印机?
或者由于某种原因打印机列表被损坏(例如病毒感染)?你们两个可以尝试重新创建打印机,看看该东西是否消失。
我遇到这些类型的 IOB 错误只是因为打印机驱动程序安装损坏。
Since the other user is a programmer, we can disregard something basic related to printers like there's no printer defined on Windows?
Or for some reason the printer listing is corrupted somehow (a virus infection, for example)? You two can try recreating the printers and see if the thing disappears.
I've those type of IOB erros just because an corrupted printer driver installation.