Abrir libro con contraseña usando el metodo run de shell

05/04/2006 - 01:36 por Crievep | Informe spam
Deseo abrir un libro protegido con contraseña, conozco la contraseña,
utilizando shell, o shellexecute o similar. con esto se quiere restringir el
acceso a cualquier persona y que solo se pueda abrir el libro desde un
programa hecho en visual fox que envie la contraseña o alguien que conozca la
contraseña.

De antemano gracias por la posible ayuda

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
05/04/2006 - 07:00 | Informe spam
hola, 'anonimo/a' !

Mostrar la cita
1) [hasta donde se]... el 'shell' NO tiene 'acceso' al modelo de objetos de excel :-( [por lo tanto]...
2) el 'shell' NO puede 'pasarle parametros' [como claves de apertura/escritura o in/habilitacion de las macros] :-(
3) una vez 'llamado/abierto/...' excel [por 'efectos' del shell]... los dialogos de interaccion con el usuario son 'inevitables' :-(
4) una -posible- alternativa es utilizar 'instancias' de excel [p.e. CreateObject("Excel.Application") o... GetObject("")]
para estar en condiciones de 'anticiparle' la/s clave/s usando el 'tradicional' metodo Open "Libro", Password, etc. etc. etc.
-> la desventaja ?... -> se pierde la apertura de complementos [por si fuera necesario llamar a funciones 'NO-integradas'] -?-
5) si tu libro YA tiene asignada una clave 'de proteccion' [p.e. para permitir su apertura]... considera lo siguiente:
-> si lo abres [por el metodo de automatizacion que sea] para 'dar permiso' a quien NO conozca la/s clave/s...
que 'impedira' [una vez abierto] que un usuario le 'haga' un 'guardar como...' -> y elimine/cambie 'sus' claves anteriores -?-
6) a menos que ya tengas 'cubierta' dicha posibilidad... [creo que]... lo mejor seria...
dejar el libro 'protegido'... y que SOLO lo pueda abrir... quien conozca la/s clave/s asignada/s ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
#2 Crievep
05/04/2006 - 17:30 | Informe spam
Hector gracias por su respuesta.

Ampliando un poco, se esta intentando abrir el libro desde un programa en
fox pro con create object, pero se desea que inmediatamente despues de
abierto el libro cerrar dicho programa, pero aparece un hermoso error debido
al objeto instanciado que pareciera debe destruirse ante de cerrar el
programa. Sera posible independizar esto? ...esta es la razon por la que se
intento con shell..pero igual no se puede enviar la contraseña... si alguien
sabe de un mecanismo similar que nos pueda resolver el problema sera bien
recibido.

Gracias desde Colombia
#3 Héctor Miguel
06/04/2006 - 02:12 | Informe spam
hola, 'anonimo/a' !

Mostrar la cita
lo siguiente me ha funcionado desde word-vba [ve si es funcional o adaptabla a visual fox] ;)
1) evita establecer una referencia de objeto [con la instruccion Set] 'metiendo' las instrucciones en un bloque 'With...End With'
2) 'contesta' de manera 'anticipada' a la solicitud de la clave de apertura [con un SendKeys] con la clave y un 'enter' ;)
-> una linea ANTES de la instruccion 'Open'

un ejemplo en un modulo de codigo vba en un documento normal de ms-word...
Sub Instancia_excel()
With CreateObject("Excel.Application")
SendKeys "contrase#a~"
.Workbooks.Open "C:\Ruta y Sub\Carpetas donde esta\El archivo.xls"
End With
Application.Quit
End Sub

espero te sirva ;)
saludos,
hector.
Ads by Google
Search Busqueda sugerida