Función InternetOpenA (wininet.h)
Inicializa el uso de una aplicación de las funciones de WinINet.
Sintaxis
HINTERNET InternetOpenA(
[in] LPCSTR lpszAgent,
[in] DWORD dwAccessType,
[in] LPCSTR lpszProxy,
[in] LPCSTR lpszProxyBypass,
[in] DWORD dwFlags
);
Parámetros
[in] lpszAgent
Puntero a una cadena terminada en null que especifica el nombre de la aplicación o entidad que llama a las funciones winINet. Este nombre se usa como agente de usuario en el protocolo HTTP.
[in] dwAccessType
Tipo de acceso necesario. Este parámetro puede ser uno de los valores siguientes.
Valor | Significado |
---|---|
|
Resuelve todos los nombres de host localmente. |
|
Recupera el proxy o la configuración directa del Registro. |
|
Recupera el proxy o la configuración directa del Registro e impide el uso de un archivo de instalación de Internet (INS) o Microsoft JScript de inicio. |
|
Pasa solicitudes al proxy a menos que se proporcione una lista de omisión de proxy y el nombre que se va a resolver omite el proxy. En este caso, la función usa INTERNET_OPEN_TYPE_DIRECT. |
[in] lpszProxy
Puntero a una cadena terminada en null que especifica el nombre de los servidores proxy que se van a usar cuando se especifica el acceso de proxy estableciendo dwAccessTypeen INTERNET_OPEN_TYPE_PROXY. No use una cadena vacía, ya que InternetOpen la usará como nombre de proxy. Las funciones winINet solo reconocen servidores proxy de tipo CERN (solo HTTP) y la puerta de enlace FTP de TIS (solo FTP). Si Microsoft Internet Explorer está instalado, estas funciones también admiten servidores proxy SOCKS. Las solicitudes FTP se pueden realizar a través de un proxy de tipo CERN cambiandolas a una solicitud HTTP o mediante InternetOpenUrl. Si dwAccessType no está establecido en INTERNET_OPEN_TYPE_PROXY, este parámetro se omite y debe ser NULL. Para obtener más información sobre cómo enumerar servidores proxy, vea la sección Enumeración de servidores proxy de habilitación de la funcionalidad de Internet.
[in] lpszProxyBypass
Puntero a una cadena terminada en null que especifica una lista opcional de nombres de host o direcciones IP, o ambas, que no se deben enrutar a través del proxy cuando dwAccessType está establecido en INTERNET_OPEN_TYPE_PROXY. La lista puede contener caracteres comodín. No use una cadena vacía, ya que InternetOpen la usará como lista de omisión de proxy. Si este parámetro especifica la macro "<local>", la función omite el proxy de cualquier nombre de host que no contenga un punto.
De forma predeterminada, WinINet omitirá el proxy de las solicitudes que usan los nombres de host "localhost", "loopback", "127.0.0.1" o "[::1]". Este comportamiento existe porque un servidor proxy remoto normalmente no resolverá estas direcciones correctamente. Internet Explorer 9: Puede quitar el equipo local de la lista de omisión de proxy mediante la macro "<-loopback>".
Si dwAccessType no está establecido en INTERNET_OPEN_TYPE_PROXY, este parámetro se omite y debe ser NULL.
[in] dwFlags
Opciones. Este parámetro puede ser una combinación de los valores siguientes.
Value | Significado |
---|---|
|
Realiza solo solicitudes asincrónicas en identificadores descendientes del identificador devuelto de esta función. |
|
No realiza solicitudes de red. Todas las entidades se devuelven de la memoria caché. Si el elemento solicitado no está en la memoria caché, se devuelve un error adecuado, como ERROR_FILE_NOT_FOUND. |
|
Idéntico a INTERNET_FLAG_FROM_CACHE. No realiza solicitudes de red. Todas las entidades se devuelven de la memoria caché. Si el elemento solicitado no está en la memoria caché, se devuelve un error adecuado, como ERROR_FILE_NOT_FOUND. |
Valor devuelto
Devuelve un identificador válido que la aplicación pasa a las funciones de WinINet posteriores. Si Se produce un error en InternetOpen , devuelve NULL. Para recuperar un mensaje de error específico, llame a GetLastError.
Comentarios
InternetOpen es la primera función winINet a la que llama una aplicación. Indica al archivo DLL de Internet que inicialice estructuras de datos internas y prepárese para futuras llamadas desde la aplicación. Cuando la aplicación termine de usar las funciones de Internet, debe llamar a InternetCloseHandle para liberar el identificador y los recursos asociados.
La aplicación puede realizar cualquier número de llamadas a InternetOpen, aunque normalmente basta con una sola llamada. Es posible que la aplicación tenga que definir comportamientos independientes para cada instancia de InternetOpen , como diferentes servidores proxy configurados para cada uno.
Una vez que la aplicación que realiza la llamada haya terminado de usar el identificador HINTERNET devuelto por InternetOpen, debe cerrarse mediante la función InternetCloseHandle .
Al igual que todos los demás aspectos de la API de WinINet, esta función no se puede llamar de forma segura desde DllMain ni desde los constructores y destructores de objetos globales.
Nota
El encabezado wininet.h define InternetOpen como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wininet.h |
Library | Wininet.lib |
Archivo DLL | Wininet.dll |