===== [V7] ISSUE: “CMD.EXE was started with the above path as the current directory. UNC paths are not supported. Defaulting to Windows directory.” when running a Windows batch file as a pre or post backup command from a network drive =====
Article ID: 5233
Reviewed: 2017-03-13

Product Version:
AhsayOBM/AhsayACB: 7.3.0.0 to 7.x
OS: Windows

ATTENTION 1st January, 2022: v7 officially End-of-Life [details] ===== Problem Description ===== When performing a backup job on AhsayOBM/AhsayACB the following error is shown in the backup log, if a Windows batch file is run as a pre or post backup command from a network drive or UNC path.

No. Type Timestamp Log
* ... ... ...
* info YYYY/MM/DD hh:mm:ss [Pre-Backup-1] xxxx.bat
* warn YYYY/MM/DD hh:mm:ss '\\UNC_PATH\folder\'
* warn YYYY/MM/DD hh:mm:ss [Pre-Backup-1] CMD.EXE was started with the above path as the current directory.
* warn YYYY/MM/DD hh:mm:ss [Pre-Backup-1] UNC paths are not supported. Defaulting to Windows directory.
* warn YYYY/MM/DD hh:mm:ss [Pre-Backup-1] 'xxxx.bat' is not recognized as an internal or external command,
* warn YYYY/MM/DD hh:mm:ss [Pre-Backup-1] operable program or batch file.
* ... ... ...

===== Cause ===== The warning message is returned by Microsoft Windows and not Ahsay, it is related to Windows limitation which prevents the running of batch files on UNC paths.

References:
https://support.microsoft.com/en-us/help/156276/cmd.exe-does-not-support-unc-names-as-the-current-directory
https://technet.microsoft.com/en-us/library/bb490978.aspx
https://social.technet.microsoft.com/Forums/scriptcenter/en-US/b3243c52-65d4-4fda-a7eb-f94733eaf408/how-to-trap-cmdexe-was-started-with-the-above-path-unc-paths-are-not-supported-message-in?forum=ITCG

===== Resolution ===== A workaround for this Windows limitation is to use a batch file located on a local drive along with the pushd and popd commands to launch the batch file on the network drive.

Example:
Batch file: \\192.168.22.41\Production\current\shutdown_database.bat

  1. Create an batch file and save on local machine to execute the batch file on UNC path or network drive.
  2. Call the local batch file (localbatch.bat) in the pre or post backup command in AhsayOBM/AhsayACB.

    localbatch.bat
    echo on
    pushd \\192.168.22.41\Production\current\
    \\192.168.22.41\Production\current\shutdown_database.bat
    popd


===== Keywords ===== Pre-command, post-command, UNC, network drive, batch file, popd, pushd, operable program