2010-01-06 84 views
0

我一直在开发一个C++中的小型内部应用程序,通过一个仅限于Windows的API访问供应商的数据。我已经在Windows XP上的Visual Studio 2008中开发了这个应用程序(实际上在Windows XP虚拟机中,但是无论如何),并且在这个系统上的测试中它运行良好。 现在我部署到Windows Server 2008标准体系,如果我在那个系统上运行我在调试模式下应用程序的调试输出,除了常规的东西,列出了几十行阅读:Windows Server 2008上VS 2008中不支持的rpcns4.dll消息

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

现在我不知道RPC是否面对我,并且我确信我为我的应用程序编写的东西远不是RPC附近,所以我总结了RPC的内容来自外部API。
程序运行良好,除了这一条消息,所以这不是严重的问题,我只是好奇它的意思。而且我想知道它是否表示我可以在不久的将来通过此API发现任何严重问题。如果我谷歌这句话,我到达了一个typical msdn page,这并没有教会我很多关于这个问题。

回答

0

看来这个运行时消息是从运行在Windows Vista和更高版本机器上的RPCLocator服务发出的。这项服务似乎只是为了确保需要该服务的传统程序能够找到某种东西。 RPC定位器,也称为Windows定位器,在Windows 2000中引入,它的功能在Windows Vista中删除。现在看起来只是发出这些警告。如果我理解正确,那么使用RPC定位器的程序可能会在更高版本的Windows中停止工作。我不确定使用此服务提供的功能的程序是否在Vista及更高版本上无法使用。

在我的具体情况下,访问此服务的一些代码已保留在我使用的API版本中,导致发送消息。但是这段代码似乎对API的实际功能没有贡献。它已在更新的版本中删除。