HttpAddUrl завершается с ошибкой ERROR_SHARING_VIOLATION (32L) - PullRequest
1 голос
/ 22 января 2011

Я пытаюсь написать слушатель цены.

данные поступают в виде "push" -ответа, то есть чанкованного кодирования передачи.Я решил использовать HTTP-сервер API, так как оба асинхронных Wininet и WinHTTP чтения данных API и закрывают соединение, если нет данных в течение короткого времени.

Прежде всего, я правильно использовать httpсервер api?

секунда, если я пытаюсь, как в примере MSDN:

retCode = HttpInitialize( 
            HttpApiVersion,
            HTTP_INITIALIZE_SERVER,
            NULL
            );    // return is NO_ERROR

retCode = HttpCreateHttpHandle(
            &hReqQueue,
            0
            );    // return is NO_ERROR

std::wstring url = _T( "http://apidintegra.tkfweb.com:80/" );
retCode = HttpAddUrl(
            hReqQueue,
            url.c_str(),
            NULL
            );    // always fails with ERROR_SHARING_VIOLATION

я всегда получаю нарушение совместного доступа.мне нужно использовать netsh для настройки соединения?если так как?Я видел упоминание о настройке http.sys и даже пытался выполнить приведенный выше код от имени администратора.

Я был бы чрезвычайно признателен за некоторую помощь, так как для этого, похоже, очень мало кода!

Большое спасибо, Джон

1 Ответ

0 голосов
/ 27 сентября 2011

Эта ошибка возникает, если порт уже используется другим процессом.Это означает, что другое приложение использует порт (например, IIS или другой веб-сервер).

...