Programación General > Visual Basic 6.0 e inferiores
Re: Sobre OCX
giomar:
Como puedo registrar mis OCX o DLL desde VB.
Es posible hacer eso
Brroz:
Para registrar tu componente:
Shell "REGSVR32 /S RutaNombreComponente.ocx"
El modificador /S es para registrar en modo silencioso.
Si quieres desregistrar utiliza el modificador /U.
Suerte.
giomar:
Lo probe y resulta, la verdad no se como no se me ocurrio probar con el SHELL.
El motivo por el cual hice esta consulta era por que estoy comenzando a crear componentes (simples pero bueno recien comienzo) y notaba que seria un poco fastidioso que el usuario que quizas queria abrir la aplicaion tubiera que hacer todo el proceso del registro como copiarlo a la carpeta SYSTEM o SYSTEM32 y ejecutar el comando de registro entonce se me ocurrio que el mismo programa lo haga pero el problema ahora es el SITEMA OPERATIVO como bien sabes las rutas de las carpetas donde se debe copiar el OCX o DLL cambian segun el sistema operativo.
Bueno parte de este inconveniente lo tengo resuelto ya que puedo saber por codigo que sistema operativo estoy uzando pero lo que desconozco es la ruta que tendria que especificar en cada uno para copiar el archivo y hacer el registro propiamente dicho.
Osea me explico se que para Win2000 la ruta es "C:WINNTsystem32....dll" o "C:WINNTsystem....dll" porque estoy trabajando con este sistema péro ¿De los demas desconozco?.
Ahora no se si me podrias facilitar esa informacion quizas tienes un listado ya perparado o estas mas informado sobre eso.
A si estas interezado puedo pasarte el codigo de como averiguar el sistema operativo lo pidemelo y te lo envio al instanste.
Saludos...
Y gracias por la ayuda anterior.
<Giomar>:comp:
Brroz:
Para averiguar en que directorio está instalado windows y cúal es el directorio del sistema (independientemente de la versión) puedes utilizar el siguiente código:
Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private Function WindowsSysDir() as String
Dim strDir As String
strDir = Space(255)
GetSystemDirectory strDir, 255
WindowsSysDir = left(strDir, Instr(1,strDir,Chr(0))-1)
End Function
Ten en cuenta que windows no siempre está instalado en el mismo directorio.
Espero que esto te sirva.
Suerte.
chiaravel:
Generalmente el error se da cuando posterior a la instalacion de una aplicacion, modificamos el proyecto y le agregamos componentes OCX o DLLs.
Ahora....
Cuando ejecutamos esa aplicacion desde el cliente da el tipico error de que no esta registrado, etc , etc.
Como se puede hacer para atajar ese error desde la mismisima aplicacion, y poder determinar que OCX es el que no esta registrado y aplicarle todo el codigo que figura en las respuestas anteriores ?
Gracias
Navegación
[#] Página Siguiente
Ir a la versión completa