2011-04-04 52 views
2

我有一個與Python和COM相關的問題。COM本地服務器(進程外)w/Python

我得到了一個程序,它是一個進程外COM本地服務器(它是一個.EXE)。它被設計成一個Singleton,所以在一臺機器上總是隻有一個實例運行。它旨在支持多個客戶端。我的問題是如何創建一個Python客戶端來使用它。

我對COM的使用經驗有限,而且我的情況似乎很少見。基本上,定義了接口方法,並且如何在C++上下文中鬆散地定義接口的實現。但是,我在Python中做同樣的事情時遇到了麻煩。

我使用的是win32com和pythoncom,但兩者的文檔都比較模糊,我無法弄清楚如何實現這一點。我也嘗試在PythonWin中使用COM Makepy工具,但我不知道如何處理它生成的文件。

我很抱歉如果我的問題太含糊,因爲這是我第一次使用堆棧溢出。與Python和COM相關的大多數其他問題幾乎涉及我的主題,但我仍然需要一些更多的指導。

回答

0

是的,你的問題有點含糊。這聽起來像你的問題只是「與COM交談」的一面 - 即。不是單件服務器的東西。我從Win23com文檔中設法解決了這個問題,並且我認爲這本書中的一章(我已經傳承了 - 但我認爲這是一本O'Reilly學習python類書)。

反正,我沒有寫上使用win32com Python調用MapPoint的一篇文章,在這裏:

http://www.mapping-tools.com/howto/programming/using-python-with-mappoint/

可能可以從這個到嬰兒牀和得到的東西的工作? 也許首先使用一個已知的COM接口來嘗試一些例子。例如。其中一種Office產品或MapPoint(如果您有可用的話)。