I forgot to add and would it cause a problem if I copied over at startup, pc3, plot style tables, etc... which I thought one or some the files for plotting if changed AutoCAD had to be restarted.
I've used simple login scripts that compare file timestamps or crc's and avoid redundant or needless file copying.
You can also do the same on a demand-driven basis, at the point when you need a file, you can check to see if a local copy doesn't exist or is older than the remote copy, and copy the file from the remote location only if either of those conditions are true.
If you are copying on another thread, you need to be sure that none of those files will be accessed by a process on the local system before the copying is done.
[edit] I found this in one of my helper libraries.
public static class FileUtils
{
public static bool CopyEx( string source, string destination )
{
if( string.IsNullOrEmpty( source ) )
throw new ArgumentException
( "source cannot be null or empty" ); if( string.IsNullOrEmpty( destination ) )
throw new ArgumentException
( "destination cannot be null or empty" ); if( string.Equals( source, destination, StringComparison.OrdinalIgnoreCase ) )
throw new InvalidOperationException
("source and destination cannot be the same" ); if( ! File.Exists( source ) )
throw new FileNotFoundException
( source
); if( ! File.Exists( destination ) )
{
File.Copy( source, destination );
return true;
}
DateTime destTime = File.GetLastWriteTimeUtc( destination );
DateTime sourceTime = File.GetLastWriteTimeUtc( source );
if( sourceTime > destTime )
{
File.Copy( source, destination, true );
return true;
}
return false;
}
}