¿Cuál es la forma correcta de usar win32inet.WinHttpGetProxyForUrl

Estoy tratando de usar una característica de la biblioteca Microsoft WinHttp que ha sido expuesta por los desarrolladores de Win32com. Desafortunadamente, la mayoría de la biblioteca no parece estar documentada y no hay ningún ejemplo de la forma correcta de usar las características de win32inet a través de la biblioteca de win32com.

Esto es lo que tengo hasta ahora:

import win32inet
hinternet = win32inet.InternetOpen("foo 1.0", 0, "", "", 0)
# Does not work!!!
proxy = win32inet.WinHttpGetProxyForUrl( hinternet, u"http://www.foo.com", 0  )

Como puede ver, todo lo que estoy tratando de hacer es usar la función win32inet para averiguar qué proxy es el apropiado para usar para una URL determinada, en su caso foo.com.

¿Puedes ayudarme a corregir la sintaxis de la última línea? MSN tiene algunosBuena documentación para la función que se está envolviendo. pero parece que los argumentos no se corresponden con los de la biblioteca de python.

La versión fija de este script debe:

Ser capaz de buscar qué proxy utilizar para cualquier URL dada.

Siempre debe hacer exactamente lo que haría Internet Explorer (es decir, usar el mismo proxy)

Debe ser válido en cualquier configuración válida de Windows XP. Eso significa que debería funcionar con un proxy configurado explícitamente y también con ningún proxy.

Solo necesita funcionar en Windows XP de 32 bits con Python 2.4.4. Puede utilizar cualquier versión oficial de win32com.

Estoy usando Python2.4.4 con Win32Com en Windows XP.

ACTUALIZACIÓN 0:

O ... ¿puedes darme una implementación alternativa en cTypes? ¡Mientras pueda hacerlo funcionar estoy feliz!

Respuestas a la pregunta(3)

Su respuesta a la pregunta