Как подключить отладчик Delphi к 64-разрядному IIS 7.5?

Я запускаю Delphi XE в Windows 7 Pro 64 и IIS 7.5, разрабатывая приложение ISAPI. IIS настроен правильно (включая разрешение 32-разрядного кода для запуска в процессе ISAPI). Процесс ISAPI работает правильно.

в Delphi я пытаюсь подключиться к процессу ISAPI, запущенному на localHost, чтобы пройти через мой ISAPI.код dll: Run - >Attach to Process - >InetInfo.исполняемый.

Я делал это тысячу раз с Windows XP и IIS 5, но в этой новой среде я не могу присоединитесь к процессу ISAPI. Я получаю сообщение об ошибке в IDE при попытке подключения:

невозможно создать процесс-запрос не поддерживается

Это стоит мне много времени - я должен выкачивать строки отладки для каждой строки кода, запускать приложение,а затем смотреть на мои строки отладки и т. д.

Почему я не могу подключиться к процессу ISAPI? Это проблема конфигурации IIS 7.5? Возможно, связано с 32/64-битными проблемами, потому что IIS родной 64-разрядный и Delphi отладчик 32-разрядный?

5 ответов


узнайте это здесь, http://blogs.msdn.com/b/david.wang/archive/2006/06/21/isapi-filter-and-the-iis6-process-model.aspx

чтобы было ясно, в режиме изоляции рабочего процесса iis, w3wp.exe-это процесс, который загружает ваши фильтры isapi, поэтому вы должны прикрепиться к нему вместо inetinfo.исполняемый.


вы можете проверить это: http://www.embarcadero.com/products/delphi/64-bit


Если IIS 64bit использует ISAPI.DLL, который является 32-битным модулем, он должен использовать 32-битный процесс загрузки. Вы могли бы использовать ProcessExplorer создан чтобы найти, какой процесс загружает ваш ISAPI.DLL и прикрепить Delphi к этому процессу.


вы можете отлаживать 32-разрядную dll ISAPI на x64-разрядной машине, установив" включить 32-разрядное приложение " в true в расширенных настройках пула приложений в IIS 7.5.

в Delphi вы указываете "C:\Windows\System32\inetsrv\w3wp - ... exe "как хост-приложение с параметрами "- debug". Запустите Delphi IDE как admin и вы идете. Если вам нужно больше контроля над тем, как запускается w3wp, вы определяете доступные параметры с помощью команды C:\Windows\System32\inetsrv\w3wp - ... исполняемый -?

надеюсь, что это помогает!


отлаживать веб-приложение Delphi ISAPI в IIS 7.5 можно с помощью следующего средства http://www.eggcentric.com/ISAPIDebug.htm. (Вам нужно будет настроить ISAPIFwd.ini-файл)