Noticias Weblogs Foros Wiki Código

RecorteX

318 usuarios y 202 recortes de código
Usuario

Contraseña
Crear cuenta
asp csharp css fechas fichero Flash html imagenes java javascript linux mysql oracle php ruby sql SQLServer vbnet xhtml xml
Top Usuarios
albin (29)
josuebasurto (28)
fjmp76 (27)
juanjo (25)
pedrocaro (9)
AndiXTRM (7)
Joserra (7)
miiglesi (6)
aplyca (5)
moisesmarquez (5)
Top Etiquetas
php (38)
html (23)
javascript (20)
vbnet (20)
java (19)
sql (15)
mysql (13)
csharp (12)
xml (10)
css (8)
imagenes (7)
Flash (7)
xhtml (6)
asp (6)
linux (6)
fechas (6)
SQLServer (5)
oracle (5)
fichero (4)
ruby (4)

Obtener la versión de Explorer desde C#

Internet Explorer, al contrario que otros navegadores, no almacena la versión actual de su navegador en el registro. La única forma de obtenerlo es accediendo a la función DllGetVersion presente en la librería "shdocvw.dll" que es la encargada de realizar el renderizado de las páginas.
Para ello tan solo debemos realizar los siguientes sencillos pasos:

1º Declarar la función y la librería en la que se encuentra dentro de la clase que va a utilizarlo.
 
[System.Runtime.InteropServices.DllImport ("shdocvw.dll")]
private static extern int DllGetVersion (ref DLLVERSIONINFO pdvi);
 
2º Definir la estructura que almacenará la información de la versión
 
struct DLLVERSIONINFO
{
  public uint cbSize,
  dwMajorVersion,
  dwMinorVersion,
  dwBuildNumber,
  dwPlatformID;
}
 
3º Llamar a la función y obtener la información.
 
DLLVERSIONINFO dvi = new DLLVERSIONINFO ();
dvi.cbSize = (uint)System.Runtime.InteropServices.Marshal.SizeOf (dvi);
int resultado = DllGetVersion (ref dvi);
 
if (resultado == 0)
  return string.Format ("{0}.{1}.{2}", dvi.dwMajorVersion, dvi.dwMinorVersion, dvi.dwBuildNumber);
else
  return "?";
 
Identifícate para dejar un comentario.
info@recortex.com - Proyecto: Juanjo Navarro, 2006 - Diseño: Albin