Foros del Web » Programando para Internet » ASP Clásico »

meter funciones en .dll

Estas en el tema de meter funciones en .dll en el foro de ASP Clásico en Foros del Web. hola, hay alguna forma de meter todo este codigo en una .dll? y usarlo desde cualquiera de mis paginas en la intranet con tan solo ...
  #1 (permalink)  
Antiguo 06/10/2004, 14:25
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
meter funciones en .dll

hola, hay alguna forma de meter todo este codigo en una .dll? y usarlo desde cualquiera de mis paginas en la intranet con tan solo llamar las funciones? o es explicitamente necesario hacer clases para meter en dll?
la verdad no tengo ni idea de como hacer clases entonces no se todavia como hacer dlls. estoy en el proceso de aprendizaje de las dichas clases..
espero me den una mano con esta duda.

Código:
 <% 
function cabecera()
'#####################################
'PARA NO ALMACENAR EN CACHE
'#####################################
response.expires = 0
response.expiresabsolute = Now() - 1
response.addHeader "pragma","no-cache"
Response.Buffer = true
response.addHeader "cache-control","private"
Response.CacheControl = "no-cache"
'#####################################
'ESCRIBE LA CABECERA DE LA PAGINA 
'#####################################
response.write "<html><head><title>mi titulo aqui</title><meta http-equiv=""Content-Type"" content=""text/html; charset=iso-8859-1"">"
'#####################################
'CAMBIA LA APARIENCIA DEL SOFTWARE SEGUN LAS PREFERENCIAS
'DEL USUARIO (COLOR,LETRA,TAMAÑO,ETC.)
'#####################################
'response.write "<link href=""../estilos/"& response.cookies("apariencia")&""" rel=""STYLESHEET"" type=""text/css"">
'#####################################
'ICONO DE FAVORITOS
'#####################################
response.write "<link rel=""shortcut icon"" href=""../img/icono.ico"">"
'#####################################
'CIERRA ETIQUETA HEAD DE HTML
'#####################################
response.write "</head>"
end function
function cuerpo()
'#####################################
'ESCRIBE EL CUERPO DE LA PAGINA
'#####################################
response.write "<body style=""border:0xp"">"
end function
function final()
'#####################################
'ESCRIBE EL FINAL DEL CUERPO Y DEL HTML DE LA PAGINA
'#####################################
response.write "</body></html>"
end function
Dim rs
function conx_bd(nombre_bd)
'#####################################
'CONEXION A BASE DE DATOS DE TODOS LOS MODULOS 
'DE MANERA GENERAL. 
'EL PARAMETRO nombre_bd CORRESPONDE AL NOMBRE DE LA
' BASE DE DATOS QUE SE DESEE ABRIR
'#####################################
con = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
"Data Source="& Server.MapPath("../carpeta/"&nombre_bd&".mdb")&";" & _
"Jet OLEDB:Database Password=miclave;"
set conx = Server.Createobject("adodb.connection")
conx.open con
conx_bd = conx
end function
'#####################################
' FUNCION PARA CERRAR CONEXION Y DESTRUIR
' LOS OBJETOS
'#####################################
function cerrar_con()
conx.close
rs.close
set conx = nothing
set con = nothing
set rs = nothing
End function
%>
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com

Última edición por lexus; 06/10/2004 a las 16:20
  #2 (permalink)  
Antiguo 06/10/2004, 15:08
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
mmmhhh bueno, no es tan sencillo como eso, te dejo un buen manual donde podrás entender un poco mas acerca de los COM, en la parte final, los créditos de este manual para este foro, me parece que AZ alguna vez lo tuvo colgado en su server, de ahí lo descargué.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 06/10/2004, 16:12
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
muchas, gracias ese manual ya lo tenia pero no vi algo muy detallado sobre como manejar las clases o las dll.. en fin me lo lei y no capte muy bien como meter en dll. por eso pregunto aqui .. pero detodos modos muchas gracias.. espero encntrar algo mas detallado. deprondo en otro manual o nose.. seguire buscando :)
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #4 (permalink)  
Antiguo 10/10/2004, 16:30
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
como coloco todo ese codigo en dll? alquien sabe?
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #5 (permalink)  
Antiguo 10/10/2004, 17:01
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
?????????????????????????????????????????
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #6 (permalink)  
Antiguo 10/10/2004, 17:09
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
ok, gracias.. ya te envie a tu correo la de la webcam que tengo yo para que la veas.. chao..

por otro lado sabes algo sobre esta pregunta? :)
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #7 (permalink)  
Antiguo 11/10/2004, 02:16
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
¿Es inprescindible lo de la DLL? A lo mejor podrías usar includes con rutinas y, aunque el proceso sea un poco más lento, no tendrías que andar compilando cada vez que realizases alguna modificación de código.

¿Sabes cómo hacerlo? Si no, te lo explico.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #8 (permalink)  
Antiguo 11/10/2004, 14:48
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
pues la verdad ahora lo manejo con funciones dentro de includes, pero lo de la idea en una dll es porque pienso vender una aplicacion y no quiero que miren la clave a la conexion de la base de datos y otras fucniones que tengo en ese archivo, es por eso que tengo la idea de meter esa info en dll.. es posible? bueno espero me puedas colaborar
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #9 (permalink)  
Antiguo 11/10/2004, 17:25
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
sipues. debes tener visual basic para hacer la dll.
  #10 (permalink)  
Antiguo 11/10/2004, 19:36
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
tengo visual studio 2005 sirve? bueno el caso es qeu no se como hacerlas..
espero me den una mano para ver como meto lo que puse arriba en una dll. gracias por la ayuda qeu puedan darme
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #11 (permalink)  
Antiguo 11/10/2004, 23:09
Avatar de speedy  
Fecha de Ingreso: octubre-2004
Ubicación: México
Mensajes: 127
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola lexus

Espero te sirva...

Referencia Microsoft

Crear un DLL ActiveX para usar con ASP
__________________
Saludos :cool: y Suerte :arriba:
valle del mezquital en el Estado de Hidalgo
  #12 (permalink)  
Antiguo 11/10/2004, 23:40
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
ok, te agradezco mucho speedy. pero tengo una duda ya he bajado varios tutoriales de clases.. pero lo qeu pregunto es si hay forma de meter ese codigo que puse arriba que esta hecho con funciones a una dll.. porque siempre veo qeu para metere en dll se necesitan clases.. no veo que se puedan meter funciones en dll.. saben como hacerlo.? miren porfa el codigo que tengo arriba y me comeentan.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #13 (permalink)  
Antiguo 12/10/2004, 01:12
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
La verdad Lexus, no veo mucho caso que quieras hacer una dll con ese código, salvo la conexión y eso si acaso...hoy por la tarde estuve probando hacer la conexión en dll, pero no ha funcionado, con eso de registrar y si hay algo que no sirve reemplazar la dll y volver a registrar, reiniciar y todo el show, se vuelve mortal ja ja, pero bueno, si de repente sale algo te aviso, recuerda que una clase no es mas que código encapsulado, una colección de funciones o de subrutinas que finalmente crean un objeto, que finalmente podrías llamar como:

Set ObjFunciones = Server.CreateObject("MisFunciones.Funciones")
Set objConx = ObjFunciones.TuConexion("dase.mdb", ruta)

Pero no se, es donde te decía, hay que tener claro que si y que no podría quedar en ese objeto, regularmente, hablando de un desarrollo de dos capas, podrías tener la parte de manejo de datos en dll, y el código operacional abajo, ahora si se trata solo de esconder el password de la base de datos, bastaría con una sola función en dll que te regresara dicho password, pero de nuevo, no es realmente importante en mi opinión, para las demás funciones que tienes allí, no encuentro una parte práctica de escribir un "</body>", en fin, mis $0.02

Por ahí si te sirve trata con VB o VB.NET, que la función te regrese un objeto, que finalmente seria la conexión...

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #14 (permalink)  
Antiguo 12/10/2004, 06:11
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
Creo que si tienes la posibilidad de usar .Net, como te ha indicado u_goldman, sería lo mejor. No hay problemas de registro de las dll, ni reinicios del servidor y todo ese trajín que hay que hacer cada vez que modificas el código. Además tendrías por separado el diseño de la página y el código (code behind), por lo que sería muy difícil que te encontraran la contraseña.

De todas formas, el ejemplo de El Gurú Programador está bastante bien, y se utilizan métodos que te devuleven un resultado, que sería justamente lo que tú necesitas.

No obstante, creo que te estás complicando demasiado con el tema del componente. Si tú vendes la aplicación a alguien, no sé cómo lo harás, pero entiendo que no tiene porqué utilizar la misma base de datos ¿no? ¿y si quiere usar otra? De hecho, debería usar otra ¿no? El cliente debería tener más libertad a la hora de usar ese componente o aplicación, de modo que metiéndolo en una dll le cortas bastantes posibilidades.

Bueno, un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #15 (permalink)  
Antiguo 12/10/2004, 08:59
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
ola muchas gracias por todo.. la verdad lo que mas me interesa de todo esto es meter la conexion o la clave en una dll, porque no es tanto por el cliente, lo qeu pasa es que la aplicacion qeu esta vendiendo mi empresa maneja datos muy confidenciales entonces si alguien llega y mira el codigo fuente donde esta mi conexion y copia la clave y la pegua en la base de datos puede robarse, modificar y borra estos datos tan importante que quieren proteger.. es por simple seguridad qeu quiero hacer eso. pero si dejo mi clave por alli al aire libre es muy facil entrar y hacer estragos..
espero me entiendan y puedan colaborar..
de todos modos muchas gracias por sus opiniones son muy valiosas.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:57.