Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I'm unclear as to what your actual problem is, so I'll throw out a few thoughts.</p> <ul> <li>Do you want restartable copies (with such small file sizes, that doesn't seem like it'd be that big of a deal)? If so, look at <a href="http://msdn.microsoft.com/en-us/library/aa363852.aspx" rel="nofollow noreferrer">CopyFileEx with COPYFILERESTARTABLE</a></li> <li>Do you want verifiable copies? Sounds like you already have that by verifying hashes.</li> <li>Do you want better performance? It's going to be tough, as it sounds like you can't run anything on the server. Otherwise, <a href="http://msdn.microsoft.com/en-us/library/ms740565%28VS.85%29.aspx" rel="nofollow noreferrer">TransmitFile</a> may help.</li> <li>Do you just want a fire and forget operation? I suppose shelling out to robocopy, or <a href="http://www.codesector.com/teracopy.php" rel="nofollow noreferrer">TeraCopy</a> or something would work - but it seems a bit hacky to me.</li> <li>Do you want to know when the network comes back? <a href="http://msdn.microsoft.com/en-us/library/aa377522%28VS.85%29.aspx" rel="nofollow noreferrer">IsNetworkAlive</a> has your answer.</li> </ul> <p>Based on what I know so far, I think the following pseudo-code would be my approach:</p> <pre><code>sourceFile = Compress("*.*"); destFile = "X:\files.zip"; int copyFlags = COPYFILEFAILIFEXISTS | COPYFILERESTARTABLE; while (CopyFileEx(sourceFile, destFile, null, null, false, copyFlags) == 0) { do { // optionally, increment a failed counter to break out at some point Sleep(1000); while (!IsNetworkAlive(NETWORKALIVELAN)); } </code></pre> <p>Compressing the files first saves you the tracking of which files you've successfully copied, and which you need to restart. It should also make the copy go faster (smaller total file size, and larger single file size), at the expense of some CPU power on both sides. A simple batch file can decompress it on the server side.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload