マイクロソフトではWinHTTPの一部としてメソッドを提供しています。このメソッドを使用すると、指定したURLにどのProxyを使用するかを判断できます。これはWinHttpGetProxyForUrlと呼ばれています。私はWindows C++関数WinHttpGetProxyForUrlをPythonから呼びたいと思います。これはできますか?
残念ながら、私はPythonでプログラミングしていますので、この関数に直接アクセスすることはできません。Win32COMを使用して、COMインターフェイスでMicrosoftサービスを呼び出すことができます。
Pythonからこの関数にアクセスする方法はありますか?もう一つの問題として、プロジェクトにPython以外のものを追加することはできません。つまり、C#またはC++の修正を追加するのは不可能ですが、便利です。
Windows XP上でPython2.4.4をWin32拡張機能で実行しています。
更新0:
これは私がこれまで持っているものです。
明らかimport win32inet
import pprint
hinternet = win32inet.InternetOpen("foo 1.0", 0, "", "", 0)
# Does not work!!!
proxy = win32inet.WinHttpGetProxyForUrl(hinternet, u"http://www.foo.com", 0 )
最後の行が間違っている、しかし私はそれを行うための正しい方法上の任意のドキュメントや例を見ることができません!
アップデート1:
I'm going to re-ask this as a new question since it's now really about win32com。
Python 2.4.4でctypesはありません(Python 2.5で追加されました) –
あなたはctypesをインストールできますhttp://python.net/crew/theller/ctypes/ –
はい、私はあなたの例を得ましたか?私はまだ次のビットを行う方法について混乱していますか?戻り値を取得するために構造体を作成する必要があります(http://msdn.microsoft.com/en-us/library/aa383912(VS.85).aspx)cTypesでこれを行う方法がわかりません。 –