Неподдерживаемые сообщения rpcns4.dll в VS 2008 на Windows Server 2008 - PullRequest
0 голосов
/ 06 января 2010

Я разрабатывал небольшое собственное приложение на C ++ для доступа к данным от поставщика через API только для Windows. Я разработал это приложение в Visual Studio 2008 для Windows XP (на самом деле в виртуальной машине Windows XP, но не для всех), и при тестировании в этой системе оно работает нормально. Теперь я развертываю на стандартной системе Windows Server 2008, и если я запускаю в этой системе свое приложение в режиме отладки, выходные данные отладки, помимо обычных вещей, перечисляют несколько десятков строк:

RPC:  Using rpcns4.dll.  The dll is no longer supported.

Теперь я не знаю RPC, если он ударит меня по лицу, и я точно знаю, что то, что я кодировал для своего приложения, не относится к RPC, поэтому я пришел к выводу, что материал RPC происходит от внешнего API. * Программа работает отлично, кроме одного этого сообщения, так что это не серьезная проблема, мне просто интересно, что это значит. А также я хотел бы знать, если это сигнализирует о каких-либо серьезных проблемах, которые я мог бы получить в ближайшем будущем с этим API. Если я гуглю эту фразу, я попадаю на типичную страницу MSDN , которая не слишком многому меня научит.

1 Ответ

0 голосов
/ 15 января 2010

Похоже, это сообщение во время выполнения отправляется службой RPCLocator, работающей на Windows Vista и более поздних машинах. Похоже, эта служба существует только для того, чтобы старые программы, которым требуется эта служба, могли что-то найти. RPC Locator, также известный как Windows Locator, был представлен в Windows 2000, и его функциональность была удалена в Windows Vista. Прямо сейчас все, что кажется, делает, это выпускает эти предупреждения. Если я правильно понимаю, программы, использующие RPC Locator, могут перестать работать в более поздних версиях Windows. Я не уверен, что программы, использующие функции, предлагаемые этим сервисом, не будут работать в Vista и более поздних версиях.

В моем конкретном случае часть кода, обращающегося к этому сервису, была оставлена ​​в версии API, которую я использую, что привело к сообщениям. Но этот код, кажется, ничего не вносит в реальное функционирование API. Он был удален в более поздней версии.

...