2009-10-07 20 views
0

我有使用Python腳本測試的Windows服務(充當服務器)。該服務使用C++編寫,並公開了其他服務使用的幾個RPC函數。我想用我的Python程序嘲笑其他服務,並從腳本中調用這些RPC函數。這是第一階段。第二階段發生在服務器服務通過另一個RPC調用來響應其調用者服務時。這怎麼可以在Python中完成?使用Python調用正在運行的Windows服務(進程)中的RPC函數

如果Python(或其任何擴展名)不能調用/接收RPC,如果我更改主服務器服務代碼並添加任何代碼是必需的,那麼這可以完成,這將最終調用相同的功能RPC用於執行,但可以從Python調用?

注意: 服務器服務使用通過IDL文件實現的原始Windows RPC實現RPC功能。用C++編寫的其他服務也對使用這些RPC感興趣,它們使用IDL文件生成所需的接口以進行通信。使用XML-RPC或其他技術不是一種選擇。

回答

1

你在想什麼樣的RPC?如果它是XML-RPC,那麼Python自帶SimpleXMLRPCServer模塊,它允許您使用Python編寫RPC服務器。

如果遠程服務器使用DCOM,則可以使用PythonCOM

+0

這是使用IDL文件實現的原始Windows RPC。 – haggag

+0

@haggag你的意思是COM,也許? –

相關問題