]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
Replace 'cp' to 'xcopy' for Win32
authorabd <abd@opencascade.com>
Wed, 13 Sep 2006 14:42:30 +0000 (14:42 +0000)
committerabd <abd@opencascade.com>
Wed, 13 Sep 2006 14:42:30 +0000 (14:42 +0000)
src/VISU_I/VISU_Gen_i.cc
src/VISU_I/VISU_Result_i.cc

index 34c3d37add9d93811e22aff94f0b163de7244191..ce90dc65f2fed0b26111527652ef06cceaad3c64 100644 (file)
@@ -333,17 +333,24 @@ namespace VISU
          if(theIsMultiFile){
            aFileName = SALOMEDS_Tool::GetNameFromPath(aStudy->URL()) + aFileName;
 
-           std::ostringstream aStream;
+           
+      
+      
+      //std::ostringstream aStream;
 #ifndef WNT
-                       aStream<<"cp "<<aFile<<" "<<aTmpDir<<aFileName;
+      QString aCommand( " cp %s %s%s " );
 #else
-      aStream<<"xcopy "<<aFile<<" "<<aTmpDir<<aFileName<<" /Y /Q ";
+      QString aCommand( " xcopy %s %s%s " );
 #endif
-           std::string aCommand = aStream.str();
+      aCommand.arg( aFile ).arg( aTmpDir ).arg( aFileName );
+      aCommand = QDir::convertSeparators( aCommand ); 
 
-                       QString comm = QDir::convertSeparators( QString(aCommand.c_str()) ); 
+#ifdef WNT
+      aCommand += " /Y /R ";
+#endif
        
-                       if(system(comm.latin1())){
+      //printf( "VISU_Gen_i::Save  %s", aCommand.latin1() );
+                       if(system(aCommand.latin1())){
              INFOS("VISU_Gen_i::Save - Cann't execute the command :"<<aCommand);
              continue;
            }
@@ -408,9 +415,13 @@ namespace VISU
 #ifndef WNT
          aCommand.sprintf("cp %s %s%s",aFileInfo.filePath().latin1(),tmpDir.latin1(),aFileName.latin1());
 #else
-    aCommand.sprintf("xcopy %s %s%s /Y /Q",aFileInfo.filePath().latin1(),tmpDir.latin1(),aFileName.latin1());
+    aCommand.sprintf("xcopy %s %s%s",aFileInfo.filePath().latin1(),tmpDir.latin1(),aFileName.latin1());
+#endif
+    aCommand = QDir::convertSeparators( aCommand );
+#ifdef WNT
+    aCommand += " /Y /R";
 #endif
-               
+               //printf( "VISU_Gen_i::SaveASCII %s ", aCommand.latin1() );
                if(system(aCommand.latin1())){
            if(MYDEBUG) MESSAGE("VISU_Gen_i::Save - Can't execute the command :"<<aCommand);
            continue;
@@ -1012,10 +1023,11 @@ namespace VISU
 #ifndef WNT
       aCommand.sprintf("cp %s %s",
 #else
-      aCommand.sprintf("xcopy %s %s /Y /Q",
+      aCommand.sprintf("xcopy %s %s /Y /R",
 #endif
-                      aFileInfo.filePath().latin1(),
-                      aFullFileName.c_str());
+        QDir::convertSeparators( aFileInfo.filePath() ).latin1(),
+        QDir::convertSeparators( aFullFileName.c_str()).latin1());
+      //printf( " VISU_Gen_i::CopyFrom: %s", aCommand.latin1() );
       if(system(aCommand) == -1) {
        if(MYDEBUG) MESSAGE("VISU_Gen_i::Copy - Cann't execute the command :"<<aCommand);
        return NULL;
index 343b8e9b2e74690eec084a02867288979137df59..fa122a21f2ad2a766b0f2430eb34f99951f457e9 100644 (file)
@@ -52,6 +52,7 @@
 #include <qfileinfo.h>
 #include <qsemaphore.h>
 #include <qthread.h>
+#include <qdir.h>
 
 // VTK Includes
 #include <vtkCell.h>
@@ -1161,9 +1162,15 @@ Create(const char* theFileName)
 #ifndef WNT
       aCommand.sprintf("cp %s %s",
 #else
-      aCommand.sprintf("xcopy %s %s /Y /Q",
+      aCommand.sprintf("xcopy %s %s",
 #endif
             myFileInfo.absFilePath().latin1(),aTmpDir.c_str());
+      aCommand = QDir::convertSeparators( aCommand );
+
+#ifdef WNT
+      aCommand += " /Y /R";
+#endif
+
       if(system(aCommand) == -1){
        MESSAGE("Create - Can't execute the command :"<<aCommand);
        return NULL;