2010-01-06 49 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的實際功能沒有貢獻。它已在更新的版本中刪除。