Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

Cómo recuperar la dirección URL de una página Web desde un Control ActiveX

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 181678
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.
Resumen
En este artículo se muestra cómo un control ActiveX puede recuperar el localizador de UniformResource (URL) de la página Web (documento) en el que es beinghosted.

Esto puede ser útil para restringir el uso de un control ActiveX a sitio/dominio particular o acceso a los archivos cuando proporciona una ruta de acceso relativa.
Más información
Durante la inicialización de un control ActiveX incrustado, Internet Explorer(IE) pasa un puntero a su sitio de cliente por callingIOleObject::SetClientSite(). Este proceso puede utilizarse para recuperar amoniker para el contenedor o tener acceso al modelo de objeto de documento a retrievethe URL para la página Web que hospeda.

En este artículo se muestra cómo recuperar la dirección URL actual de moniker thecontainer. Para obtener información adicional acerca de cómo obtener la dirección URL thedocument modelo de objetos, consulte el artículo siguiente en Microsoft Knowledge Base:
172763 INFORMACIÓN: Acceso al modelo de objetos desde dentro de un Control ActiveX
Siga estos pasos para recuperar la dirección URL actual desde el moniker de contenedor:
  1. Obtener al cliente de puntero de interfaz del sitio (IOleClientSite). El contenedor llama a IOleObject::SetClientSite() para pasar un puntero para el sitio del cliente. Invalide este método para almacenar en caché este puntero.
  2. Obtener un moniker para el sitio del cliente mediante la llamada IOleClientSite::GetMoniker().
  3. Llame a IMoniker::GetDisplayName() para obtener la dirección URL para el documento actual.
El código de ejemplo siguiente muestra cómo realizar la byoverriding de pasos anteriores al método IOleObject::SetClientSite() en un control ActiveX de Active TemplateLibrary (ATL):

Código de ejemplo

STDMETHOD(SetClientSite)(IOleClientSite *pClientSite){   if (pClientSite != NULL)   {      // Obtain URL from container moniker.      CComPtr<IMoniker> spmk;      LPOLESTR pszDisplayName;      if (SUCCEEDED(pClientSite->GetMoniker(                                    OLEGETMONIKER_TEMPFORUSER,                                    OLEWHICHMK_CONTAINER,                                    &spmk)))      {         if (SUCCEEDED(spmk->GetDisplayName(                                 NULL, NULL, &pszDisplayName)))         {            USES_CONVERSION;            CComBSTR bstrURL;            bstrURL = pszDisplayName;            ATLTRACE("The current URL is %s\n", OLE2T(bstrURL));            CoTaskMemFree((LPVOID)pszDisplayName);         }      }   }   return IOleObject_SetClientSite(pClientSite);}				
Referencias
Para obtener más información sobre los IOleObject, IoleClientSite y IOleContainerinterfaces, consulte la Ayuda en pantalla de Microsoft Visual C++.

(c) 1998 Microsoft Corporation, Reservados todos los derechos. Contribuciones por MarkDavis, Microsoft Corporation

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 181678 - Última revisión: 04/04/2016 04:24:00 - Revisión: 3.0

  • kbhowto kbmt KB181678 KbMtes
Comentarios
y>