Ejemplo n.º 1
0
        private bool TaskCopy(RealocateTask task)
        {
            const string cmd       = "XCOPY";
            const string flags     = @"/q /i /s /e /k /r /h"; // /f   // /o /x   // requires admin     // !?!
            string       cmdParams = BetterPath(task.Source) + " " + BetterPath(task.Destination) + " " + flags;

            return(ExecuteCommand(cmd, cmdParams, XcopyExitCode));
        }
Ejemplo n.º 2
0
        private bool TaskMkSymLn(RealocateTask task)
        {
            // MKLINK [[/D] | [/H] | [/J]] Link Target
            const string cmd       = "MKLINK";
            const string flags     = @"/j";
            string       cmdParams = flags + " " + BetterPath(task.Source) + " " + BetterPath(task.Destination);

            return(ExecuteCommand(cmd, cmdParams, Win32ErrMsg));
        }
Ejemplo n.º 3
0
        private bool TaskDelete(RealocateTask task)
        {
            // RMDIR [/S] [/Q] [drive:]path
            const string cmd       = "RMDIR";
            const string flags     = @"/s /q";
            string       cmdParams = flags + " " + BetterPath(task.Source);

            // !?! rmdir nie zwraca bledu !?!
            return(ExecuteCommand(cmd, cmdParams, Win32ErrMsg));
        }
Ejemplo n.º 4
0
        protected bool TaskRealocate(RealocateTask task)
        {
            Console.WriteLine("Task:\t{0}", task);

            if (!TaskCopy(task))
            {
                return(false);
            }

            if (!TaskDelete(task))
            {
                return(false);
            }

            if (!TaskMkSymLn(task))
            {
                return(false);
            }

            return(true);
        }