Как запустить svcutil.exe из-за аутентификационного прокси

Я хочу запустить инструмент svcutil.exe для доступа к веб-службе в Интернете. К сожалению, всякий раз, когда я пытаюсь, я получаю кучу ошибок, включая следующее сообщение:

Запрос не выполнен с HTTP-статусом 407: Требуется проверка подлинности прокси (ISA Server требует авторизации для выполнения запроса. Доступ к фильтру веб-прокси запрещен.

Как я узнал из этого связанного сообщенияподробнее здесь), проблема в том, что я сижу за аутентифицирующим прокси. В этом сообщении объясняется, что мне нужно отредактировать файл app.config, но я не могу понять, как это сделать. Я думаю, что воспользуюсь переключателем /svcutilConfig:alternate_app.config, но я не знаю, как создать действительный файл .config для перехода к этому переключателю. Какой файл app.config по умолчанию используется svcutil.exe?


person kmote    schedule 27.02.2013    source источник


Ответы (1)


Что ж, думаю, я понял ответ на свой вопрос:

Оказывается, по умолчанию .config файл, используемый svcutil.exe, называется svcutil.exe.config, и (по крайней мере, для меня) он находится в этой папке:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin

Я решил просто отредактировать этот файл напрямую (а не возиться с переключателем /svcutilConfig). Для этого мне потребовались права администратора.

Окончательное содержимое этого файла выглядело так:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <runtime>
    <generatePublisherEvidence enabled="false" />
  </runtime>
  <system.net> 
    <defaultProxy useDefaultCredentials="true" /> 
  </system.net>
</configuration>

(с секретным соусом, похороненным в элементе <system.net>.)

Чтобы все это работало, мне пришлось запустить командную строку как администратор, перейти в папку, указанную выше, и запустить оттуда команду svcutil.exe.

Надеюсь, это поможет какой-нибудь другой бедняге, которая застрянет в этом беспорядке! Спасибо @AndrewWebb за подсказки, которые меня подтолкнули!

person kmote    schedule 27.02.2013
comment
Да, мне пришлось сделать это и для SvcUtil. Для веб-приложений web.config остается как web.config, но для настольных приложений app.config в исходном коде становится ‹appName› .exe.config, как вы обнаружили. Мне очень хорошо знакомо редактирование svcutil.exe.config (и подобных файлов) вручную! Также: если вы столкнетесь с настольным приложением без файла конфигурации, вы всегда можете создать его с правильным именем, использовать конфигурацию defaultProxy и сохранить его в папке с расширением .exe. живет в. - person Andrew Webb; 03.03.2013
comment
Если файл svcutil.exe.config не существует, вы можете создать его, как описано выше в kmote, и он будет работать нормально. - person jhamm; 30.04.2014