Lazarus
Other Languages => Spanish => Topic started by: GAN on January 15, 2018, 08:51:39 pm
-
Necesito que mi programa comprima un archivo, es decir, que genere un Zip o 7Zip con password sería el resultado deseado. Debe funcionar tanto en GNU/Linux como en Windows 7.
Conocen algún paquete o componente? Y de desde ya, de ser posible un pequeña guía.
Saludos.
-
Con el programa de linea de comandos de 7zip.
http://www.7-zip.org/download.html
Funciona para Linux y Windows.
https://sevenzip.osdn.jp/chm/cmdline/syntax.htm
https://sevenzip.osdn.jp/chm/cmdline/commands/add.htm
Ejemplo con password
https://sevenzip.osdn.jp/chm/cmdline/switches/password.htm
-
7Zip uso siempre, casi a diario, mi idea era no recurrir a la linea de comandos, básicamente porque no sé como hacerlo, sino hacerlo con código; encontré un paquete ZipFile 0.1 (2006): http://wiki.freepascal.org/ZipFile (http://wiki.freepascal.org/ZipFile)
Pero 0.1 y 2006 no me atrae mucho... Quizás exista algo más nuevo. Si no queda otra tendré que aprender a utilizar la línea de comandos.
Saludos.
-
Es fácil, usas TProcess y pasas los parámetros, nada del otro mundo.
-
Es fácil, usas TProcess y pasas los parámetros, nada del otro mundo.
Cito la wiki:
TProcess is a component that can be used to start and control other processes (programs/binaries). It contains a lot of options that control how the process is started. Many of these are Win32 specific, and have no effect on other platforms, so they should be used with care.
The simplest way to use this component is to create an instance, set the CommandLine property to the full pathname of the program that should be executed, and call Execute. To determine whether the process is still running (i.e. has not stopped executing), the Running property can be checked.
El principal problema es que no sé el full pathname ni que compresor tiene instalado cada PC y el programa no le puede pedir ese dato al usuario. También se me complica por el tema de que funcione en Linux y Windows, aunque con eso puede solucionarse con un switch {$ifdef win32}. Sigo necesitando un package si es que lo hay.
-
Resuelto, solo me falta el tema de la contraseña: https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067 (https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067)
-
Resuelto, solo me falta el tema de la contraseña: https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067 (https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067)
Entonces no esta resuelto =)
-
romper la contraseña de archivo zip no es muy difícil. Asegúrese de que no sería mejor encriptar el archivo final en lugar de registrar contraseña.
es muy fácil encontrar programas que descifran las contraseñas de archivos zip y rar en lo google.
-
Resuelto, solo me falta el tema de la contraseña: https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067 (https://forum.lazarus.freepascal.org/index.php/topic,39475.msg271067.html#msg271067)
Entonces no esta resuelto =)
Es cierto, pero lo más importante era crear el zip. Contraseña con TZipper no se puede. Hace poco que estoy con Lazarus/FPC y me asombra la cantidad de código disponible que hay, lástima no tener tiempo para probar a fondo todo lo que encuentro.
romper la contraseña de archivo zip no es muy difícil. Asegúrese de que no sería mejor encriptar el archivo final en lugar de registrar contraseña.
es muy fácil encontrar programas que descifran las contraseñas de archivos zip y rar en lo google.
Así es, para mis cosas utilizo 7Zip con encriptación también de la lista de archivos y una contraseñas de más de 30 caracteres. Gracias por el aviso.
Saludos.