Buenas compañeros, nuevamente traigo una inquietud.
La cuestion es que tengo una aplicacion con vario ocx y lo que pretendo es que cada ves que abro la aplicacion verifique si dichos ocx se encuentran registrados y si no lo estan que lo haga en seguido de esto, es eso posible??, de antemano gracias.
Ya lo había posteado antes... :-\ ¡Bueno no importa!
Durante mucho tiempo lo hice de esta forma:
Option Explicit
Private Sub CmdRegistrar_Click()
Open "Registra.bat" For Output As #1
'Copiamos el control a system32
Print #1, "copy " & Text1.Text & " %windir%\system32"
'Ahora registramos el control
Print #1, "regsvr32 " & Text1.Text
'Borramos el bat
Print #1, "del Registra.bat"
Close #1
'Ejecutamos el bat
Shell ("Registra.bat"), vbHide
Unload Me
End Sub
Private Sub Form_Load()
Text1.Text = "marchoso.ocx"
End Sub
Eso suponiendo que nuestro OCX es el "marchoso.ocx" lo que hace es crear un bat que copia el control al directorio del sistema y luego lo registra, el control deberá estar en el mismo directorio del exe, la única desventaja de esto es tener que cargar todo el tiempo con el control para instalarlo y registrarlo... claro, digo esto refiriéndome a cuando quered usar la aplicación con los ocx en otros ordenadores, aunque mejor seria que usaras programas que te permitan fusionar el exe con los ocx, mira este post: http://foro.elhacker.net/index.php/topic,193721.0.html (http://foro.elhacker.net/index.php/topic,193721.0.html)
Decide y después me dices como te fue, ¡S4lu2!
jeje muy buena implementacion del comando regsvr32 + batch
Cita de: pana88 en 24 Febrero 2008, 18:33 PM
jeje muy buena implementacion del comando regsvr32 + batch
:rolleyes: :rolleyes: :rolleyes:
Si el OCX que se desea registrar esta ubicado en el mismo
directorio que su aplicacion, podria usted utilizar el siguiente
codigo para realizar el registro:
Private Sub Command1_Click()
Dim strOCX As String
strOCX = App.Path
If Not Right(strOCX, 1) = "\" Then strOCX = strOCX & "\"
strOCX = strOCX & "mswinsck.ocx"
MsgBox strOCX
Shell "regsvr32 -s " & strOCX
End Sub
Se utiliza el flag -s para que regsvr32 no muestre ningun mensaje.
En este caso se registraria el componente mswinsck.ocx