本文介绍了进程名称不可见在Delphi XE附加到进程对话框 - 无法调试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

场景:


  • 使用Delphi XE,32位编写的Delphi ISAPI dll。

  • Delphi ISAPI dll written using Delphi XE, 32 Bit.

ISAPI dll在Win 7 64企业桌面
机器上通过IIS 7.5运行。

ISAPI dll is running through IIS 7.5 on a Win 7 64 enterprise desktopmachine.

DLL运行正常。

使用Run-> Attach to调试Delphi XE IDE中的ISAPI DLL
进程:

Debug the ISAPI DLL in the Delphi XE IDE by using Run->Attach toProcess:

启动ISAPI DLL并附加到
调试器中的wpw3.exe * 32进程 - 可以跟踪和调试代码运行在ISAPI上下文中。

Launch the ISAPI DLL and attach to the wpw3.exe *32 process in thedebugger - can trace and debug code as it runs in the ISAPI context.

问题:


  • 上周我的硬盘死亡,我得到了一个新的Win 7安装 -
    标准企业版Win 7 64企业映像(不一样的我的
    以前的Win 7 64安装)。

  • My hard drive died last week and I got a new Win 7 installation - thestandard corporate wide Win 7 64 Enterprise image (not the same as myprevious Win 7 64 installation).

现在,当我进入Run-> Attach to Process时,我不再看到
wpw3.exe * 32进程的名字,虽然它可以在任务管理器
中以名称显示。在附加到
进程对话框上调用'显示系统进程'选项没有帮助。

Now, when I go into Run->Attach to Process, I no longer see thewpw3.exe *32 process by name, although it is visible in task managerby name. Invoking the 'show system processes' option on the 'Attach toProcess' Dialog box does not help.

我现在看到了什么>从来没有在我的旧部署中看到)是
a长列表的'通用'系统进程与PID而不是
描述而不是系统。

What I DO see now (which I never saw before in my old deployment) isa long list of 'generic' System process with PID's but nodescriptions other than 'System'.

其中一个进程是我的wpw3.exe * 32进程,我使用MS的Process Explorer确定了
的PID。但是如果我尝试附加到
那个进程我得到一个错误消息 - '无法创建进程 -
访问被拒绝' - 所以我无法调试。 (同样的错误信息'$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ,与PID关联。)

One of these processes is my wpw3.exe *32 process, and I have identifiedits PID using MS's Process Explorer. But if I try to attach tothat process I get an error message - 'Cannot create process -access denied' - so I can't debug. (Same error message 'ErrorOpening process, Access denied' also shows in Process Explorer forcertain properties, although the descriptive name of the process 'wpw3.exe *32' is visible there, associated with the PID.)

如何获取Run-> Attach to process对话框以显示
正确的wpw3.exe * 32进程名称并附加它,所以我可以调试?

How can I get the Run->Attach to process dialog box to display theproper wpw3.exe *32 process name and attach to it, so I can debug?

这是一个Delphi问题吗? IIS问题?一个ISAPI问题?这是一个问题 - 即缺乏描述性的进程名称和无法附加到进程是由同一问题引起的;或者是这两个问题:一个问题是缺乏描述性的名称,另一个问题是无法附加到进程中?

Is this a Delphi problem? An IIS problem? An ISAPI problem? Is this one problem - ie lack of descriptive process name and inability to attach to process are caused by same problem; or is this two problems: one problem being lack of descriptive name, another the inability to attach to the process?

(不想使用 - 不能真正使用 - webApp调试器 -
这些是部署到生产的ISAPI dll,正如他们在IIS中编写和调试
- 我需要看到它们在IIS
上下文中运行。)

(Do not want to use - cannot really use - webApp debugger for this -these are ISAPI dll's that are deployed to production exactly as theyare written and debugged in IIS - I need to see them running in IIScontext.)

以这种方式调试ISAPI dll几年,使用不同版本的Delphi和各种操作系统和服务器环境,没有任何问题 - 从未遇到此问题。我被骗了

Been debugging ISAPI dll's for several years this way, with different versions of Delphi and in various OS and server environments without any problems - never encountered this problem before. I am stumped.

推荐答案

我的帐号有管理员权限,我应该尝试运行DelphiXE作为管理员 - 使用以管理员身份运行选项启动它。

My account has admin rights, but it hit me that I should try running DelphiXE as an admin – launch it with the ‘run as administrator’ option.

我得到提示你想要允许... - 点击是并且Delphi运行。设置我的进程并挂载并跟踪我的代码 - 进程名称现在可见,我可以附加到我的IIS进程并在Delphi Debugger中进行调试。

I got prompted ‘do you want to allow…’ – clicked yes and Delphi ran. Set up my process and hooked in and traced through my code - process names now visible and I can attach to my IIS process and debug in the Delphi Debugger.

我没有不得不在以前的部署中经历这一步,无论什么原因 - 但问题解决了。

I did not have to go through this step in my previous deployment, for whatever reason - but problem solved.

这篇关于进程名称不可见在Delphi XE附加到进程对话框 - 无法调试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 17:53