![]() |
Para bajar y subir informacion
Utilizo la rutina siguiente, para bajar y subir informacion entre dos o mas computadoras que no estan en red.
procedure TFbaja_inf.BprocesaClick(Sender: TObject); var linea:string; begin linea:='cmd /k bcp "select * from bd_cona..cta where asoc in (select cod from bd_cona..ltablas where tab='+car+'ASO'+car+' and tiene='+car+'1'+car+')" queryout Bcta.txt -c -T'; try WinExec( Pchar(linea), SW_Hide); except MessageDlg('No se ha podido bajar el archivo cta.', mtWarning, [mbOK], 0); exit; end; showmessage('Termino el proceso de bajado'); end; Y para subir el archivo utilizo: linea:='cmd /k bcp bd_cona..cta in bcta.txt -c -T'; try WinExec( Pchar(linea), SW_Hide); except MessageDlg('No se ha podido subir el archivo cta.', mtWarning, [mbOK], 0); exit; end; En Windows XP Me funciona muy bien. No asi en windows 7 ni tampoco me reporta error. Si alguien pudiese ayudarme le estaria muy agradecido. |
He movido tu tema de foro ya que el foro de Trucos no es para hacer preguntas.
También te pido que cuando publiques código utilices las etiquetas adecuadas. No estaría mal una lectura de la guía de estilo. // Saludos |
luchifer,
Cita:
1- ¿Si ejecutas el comando bcp "select * from bd_cona..cta where asoc in (select cod from bd_cona..ltablas where tab='+car+'ASO'+car+' and tiene='+car+'1'+car+')" queryout Bcta.txt -c -T directamente en la consola de Windows 7 funciona? 2- ¿Por que cmd /k y no cmd /c?, con /c ejecuta el comando y termina la instancia de consola, con /k la instancia se mantiene abierta. 3- ¿Es bd_cona..cta or bd_cona.cta? Prueba cambiar WinExec por ShellExecute: Esa es la idea general, tienes que probarla. Espero sea útil :) Nelson. |
luchifer,
La función ShellExecute debería funcionar de esta forma: Espero sea útil :) Nelson. |
La franja horaria es GMT +2. Ahora son las 21:25:11. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi