Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-08-2016
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Lo primero que yo probaría sería indicar a Windows que nuestro "WebBrowser" ha de emular una versión más o menos "moderna" de Internet Explorer. Por ejemplo, la siguiente unidad (copiada aquí ahora un poco deprisa, creo que funcionará sin cambio alguno) lo que hace es indicar que nuestro "WebBrowser" quiere comportarse como un Internet Explorer 11, si es que este se encuentra instalado en el sistema.

Código Delphi [-]
unit IEBrowserFix;

interface

type
  TIEBrowserFix = class(TObject)
  public
    class procedure Initialize();
    class procedure Uninitialize();
  end;

implementation

uses
  Windows, SysUtils, Registry;

const
  REG_KEY = 'Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION';

  { TIEBrowserFix }

class procedure TIEBrowserFix.Initialize();
const
  // http://msdn.microsoft.com/en-us/libr...wser_emulation
  MAGIC_CONSTANT = 11001;
var
  exeName: string;
begin
  exeName := ExtractFileName(ParamStr(0));
  with TRegistry.Create() do
    try
      RootKey := HKEY_CURRENT_USER;
      if OpenKey(REG_KEY, true) then
      begin
        if not ValueExists(exeName) then
          WriteInteger(exeName, MAGIC_CONSTANT);
        CloseKey();
      end;
    finally
      Free();
    end;
end;

class procedure TIEBrowserFix.Uninitialize();
var
  exeName: string;
begin
  exeName := ExtractFileName(ParamStr(0));
  with TRegistry.Create() do
    try
      RootKey := HKEY_CURRENT_USER;
      if OpenKey(REG_KEY, false) then
      begin
        if ValueExists(exeName) then
          DeleteValue(exeName);
        CloseKey();
      end;
    finally
      Free();
    end;
end;

initialization
  TIEBrowserFix.Initialize();

finalization
  TIEBrowserFix.Uninitialize();

end.

Creo que eso ya podría solucionar el problema, Agustín. Si no es así, tal vez podamos intentar alguna otra cosa.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #2  
Antiguo 10-08-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
David, genio, funciona excelente.

Nunca se me hubiese ocurrido que podria ser eso.

Lo mas probable es que si consigo completar esta biblioteca la publique. Podria incluir esta unidad de codigo en ella? Y adaptarla de acuerdo a mi estilo particular?
Responder Con Cita
  #3  
Antiguo 10-08-2016
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola Agustín,

Me alegro de que funcionase. Por supuesto, puedes adaptar el código a tus necesidades. De hecho la unidad de más arriba lo que hace es añadir en el registro la clave correspondiente al iniciarse el programa, y, borrar dicha clave cuando el programa se cierra. No hay nada de particuar ahí, lo que tenemos que hacer es escribir la clave de marras en el registro.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 11-08-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Bueno al menos la parte del OAuth ya esta funcionando bien y se puede recuperar facilmente el token

Aca esta el codigo que lo implementa y hay demo para Vcl y FMX

https://github.com/ortuagustin/Delph.../Mercado Libre

Saludos!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TWebBrowser Rockin Internet 2 27-11-2007 20:41:29
TWebBrowser sin URL rafa_adrim Internet 1 20-10-2006 18:02:05
TWebBrowser albertoP Internet 0 28-04-2006 21:04:24
TWebBrowser ElCorbata Internet 2 11-11-2004 11:11:46
TWebBrowser RoyTan Internet 4 27-10-2003 22:06:09


La franja horaria es GMT +2. Ahora son las 06:02:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi