![]() |
Pasar Código VBSCRIPT a Delphi.net
Hola!!! Necesito pasar un código de VBSCRIPT a Delphi.NET, tengo el problema que hay variables que cambian de tipo varias veces en un fragmento de código(como en VBSCRIPT se definen como dim nomvariable) Cómo puedo hacerlo en delphi.net????He intentado definirlo con object y me dice que incompatibles tipos
Muchas gracias |
Tengo este código en VBScript funcionando perfectamente en una página asp, necesito incluir este código en una página aspx. Para que compile en aspx unicamente hay que quitar el Set ya que con .NET no se permite. Pero no me funciona ?¿¿¿Qué puedo hacer??? Sabes si hay alguna incompatibilidad????
<% Dim Objeto,valoresIniciados,ficheroIni,CertifBIN,ficheroCA Dim validado,cargado, longitud Dim emisor,titular,email,nserie,serialNumberHex,nombretit,apellido1tit,apellido2tit,niftit dim handle 'Creamos la instancia del servidor COM mediante su identificador: Set Objeto = Server.CreateObject ("FNMTFuncionesCOM.Funciones") 'Iniciamos la instancia para obtener un hadle para cada sesion: handle = Objeto.Inicializar 'Iniciamos las variables a partir del fichero de Ini 'Ubicamos el fichero donde queramos y definimos aqui su ubicacion: ficheroIni = "C:\\FnmtFunciones.ini" valoresIniciados = objeto.IniciaValores(handle, ficheroIni, Len(ficheroIni)) 'Cargamos el certificado X.509v3 en binario del cliente en la variable "CertifBIN" 'para extraer la informacion que necesitamos: CertifBIN = Request.ClientCertificate("CERTIFICATE") longitud = len(CertifBIN) ' Si el S.O. del Servidor Web es XP o superior convertimos en Ceritificado a Unicode if Objeto.XPoSuperior then CertifBIN = Objeto.Conv2Unicode (CertifBIN ,longitud) end if 'Extraemos la información necesaria del certificado: cargado = Objeto.CargaCertificado(handle, CertifBIN, longitud) emisor = Objeto.ObtenerEmisor (handle) titular = Objeto.ObtenerTitular (handle) email = Objeto.ObtenerEmail (handle) nserie = Objeto.ObtenerLongSerialNumber (handle) serialNumberHex = Objeto.ObtenerStringSerialNumber (handle) nombretit=Objeto.ObtenerNombre (handle) apellido1tit=Objeto.ObtenerApell1 (handle) apellido2tit=Objeto.ObtenerApell2 (handle) niftit=Objeto.ObtenerNIF (handle) ficheroCA = "" '***************************************************************************** '***********Indicamos la ruta o path del certificado raíz de la CA pertinente: IF ((Instr(1,emisor,"OU=FNMT Clase 2 CA",1))>0) THEN ficheroCA = "C:\\FNMT_CA.cer" END IF '****************************************************************************** 'Procedemos a comprobar la validez del certificado: validado = Objeto.CertificadoValidado(handle, ficheroCA) 'Liberamos la instacia: Objeto.Finalizar (handle) 'Cuando terminamos con él lo desreferenciamos Set Objeto = nothing %> |
En .NET los valores de los objetos son strongTypes, por lo que: salvo que uses un objeto que derive de Object y luego hagas un casting explicito del objeto al tipo con el que quieres trabajar; tendrás que especificar el tipo del objeto obligatoriamente para trabajar con sus metodos y propiedades.
Identifica bien que tipo de datos te representa cada variable en el script, y dimensionalas con el tipo de datos (o clase) real que maneja. |
La franja horaria es GMT +2. Ahora son las 00:57:47. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi