gpt4 book ai didi

delphi - 在终端服务器上运行的 Delphi 7 应用程序的推荐 PE header 设置?

转载 作者:行者123 更新时间:2023-12-03 14:34:43 29 4
gpt4 key购买 nike

在调查一些在 Windows 2008 终端服务器上运行 Delphi 7 应用程序的用户报告的外部异常 C0000006 错误时,我已经发现了一些关于此问题和相关问题的问题。我想知道是否有人有适合在终端服务器上运行的标准 Delphi 7 数据库应用程序的这些设置的明确列表。

我看过的问题包括:

到目前为止,我还没有阅读这些内容,我想我应该将以下内容添加到 .dpr 文件中:

const
IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = $8000;
// Following are already defined in D7's Windows.pas
IMAGE_FILE_RELOCS_STRIPPED = $0001;
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP = $0400;
IMAGE_FILE_NET_RUN_FROM_SWAP = $0800;

{$SetPEOptFlags IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE}

{$SetPEFlags IMAGE_FILE_RELOCS_STRIPPED
or IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
or IMAGE_FILE_NET_RUN_FROM_SWAP}

编辑:删除重定位部分可能是不必要的,所以这里是修订版本:

const
IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = $8000;
// Following are already defined in D7's Windows.pas
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP = $0400;
IMAGE_FILE_NET_RUN_FROM_SWAP = $0800;

{$SetPEOptFlags IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE}

{$SetPEFlags IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
or IMAGE_FILE_NET_RUN_FROM_SWAP}

最佳答案

{$SetPEOptFlags IMAGE_DLLCHARACTERISTICS_TERMINAL_ SERVER_AWARE}
{$SetPEFlags IMAGE_FILE_RELOCS_STRIPPED
or IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
or IMAGE_FILE_NET_RUN_FROM_SWAP}

非常适合您的需求。我怀疑 IMAGE_FILE_NET_RUN_FROM_SWAP 是您处理 C0000006 所需要的。当您从网络驱动器运行并且该驱动器无法满足可执行文件的页面请求时,通常会发生该错误。

无论哪种方式,其他 PE 标志都适合您。我也会像你一样拥有它。

至于IMAGE_DLLCHARACTERISTICS_TERMINAL_ SERVER_AWARE是否正确,只有你自己知道。您的应用程序是否满足被视为终端服务非旧版应用程序的要求,如 documented on MSDN ?如果是这样,请使用 IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE。

关于delphi - 在终端服务器上运行的 Delphi 7 应用程序的推荐 PE header 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14378674/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com