Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ayuda no consigo comprimir con delphi (https://www.clubdelphi.com/foros/showthread.php?t=64905)

dellarts 09-11-2009 23:56:20

Ayuda no consigo comprimir con delphi
 
Hola
unidad_disco es la C:\

El code esta bien ya que lo pongo de forma literal en el ejecutar de windows y me funciona x en codigo no hay manera alguien lo ha probado alguna vez? o sabe ke fallo tengo?


Código:

res := WinExec(pansichar('\"C:\Archivos de programa\WinRAR\rar.exe" a "C:\Screensshots\'+ruta+'.rar" "'+unidad_disco+'\Screensshots\Screens\'+ruta+'"'), SW_NORMAL);

PD: Se que hay algunos componentes de delphi ke comprimen solos x me he empeñado en hacerlo con el WinRAR :D






Saludos

cloayza 10-11-2009 01:50:39

Creo que el problema es el slash del inicio de la linea de comando.
Código Delphi [-]
res := WinExec(pansichar('\"C:\Archivos de programa\WinRAR\rar.exe" a "C:\Screensshots\'+ruta+'.rar" "'+unidad_disco+'\Screensshots\Screens\'+ruta+'"'), SW_NORMAL);
Código Delphi [-]
res := WinExec(pansichar('"C:\Archivos de programa\WinRAR\rar.exe" a "C:\Screensshots\'+ruta+'.rar" "'+unidad_disco+'\Screensshots\Screens\'+ruta+'"'), SW_NORMAL);

Saludos

dellarts 10-11-2009 08:33:19

Sin el tampoco funciona :(

Ñuño Martínez 10-11-2009 09:29:13

Ahora mismo no recuerdo si Delphi incluye ExecuteProcess, pero si es así quizá sea más efectiva que WinExec (aparte de ser más compatible ;) ):
Código Delphi [-]
FUNCTION Comprime (unidad_disco, ruta: STRING): INTEGER;
VAR
  Parametros: ARRAY [0..2] OF STRING;
BEGIN
  Parametros[0] := 'a';
  Parametros[1] := 'C:\Screensshots\'+ruta+'.rar';
  Parametros[2] := unidad_disco+'\Screensshots\Screens\'+ruta;
  RESULT := ExecuteProcess ('C:\Archivos de programa\WinRAR\rar.exe', Parametros);
END;

De todas formas, también puedes probar ShellExecute. Aquí mismo se ha hablado largo y tendido de esta última, así que no tiene que costarte mucho encontrar información de cómo utilizarla.

dellarts 10-11-2009 10:16:33

El executeProcess no me funciona en delphi

cloayza 10-11-2009 12:50:50

Podria ser que la linea de ejecucion no esta correcta, para verificar yo haria:
Código Delphi [-]
var
   cmdLine:string;
begin
      cmdLine:='"C:\Archivos de programa\WinRAR\rar.exe" a "C:\Screensshots\'+ruta+'.rar" "'+unidad_disco+'\Screensshots\Screens\'+ruta+'"';

      ShowMessage(cmdLine);

      res := WinExec(pansichar(cmdLine), SW_NORMAL);
end;

Muestranos la lines de comando resultante.

dellarts 10-11-2009 18:42:08

Esta es la linea resultante

"C:\Archivos de programa\WinRAR\rar.exe" a "C:\Screensshots\image 10-11-2009 184204.rar" "C:\Screensshots\Screens\image 10-11-2009 184204"


La franja horaria es GMT +2. Ahora son las 01:06:23.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi