script em lote para compactar uma pasta sem usar softwares externos

Eu tenho pasta com a seguinte estrutura

subpasta de pasta (vazia) subpasta file1.bat file2.bat file3.bat

Como faço para escrever um arquivo em lotes para compactar o conteúdo da pasta acima sem usar softwares externos como o winrar ou o 7zip?

Eu tentei o código abaixo. Mas copiaria o conteúdo para a pasta temporária especificada sem a pasta vazia e, ao tentar compactar a pasta, apenas compactaria o arquivo1 e o arquivo2 e ignoraria o restante do conteúdo.

Gostaria de poder compactar a pasta como está sem afetar a estrutura.

Não consegui encontrar o motivo do problema. Qualquer ajuda é apreciada.

set FILETOZIP=D:\OutputZipFiles\TestWorkDemo


set TEMPDIR=D:\OutputZipFiles\TempDir
rmdir %TEMPDIR%
mkdir %TEMPDIR%
xcopy /s %FILETOZIP% %TEMPDIR%

echo Set objArgs = WScript.Arguments > _zipIt.vbs
echo InputFolder = objArgs(0) >> _zipIt.vbs
echo, ZipFile = objArgs(1) >> _zipIt.vbs
echo CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" ^& Chr(5) ^& Chr(6) ^& String(18, vbNullChar) >> _zipIt.vbs
echo Set objShell = CreateObject("Shell.Application") >> _zipIt.vbs
echo Set source = objShell.NameSpace(InputFolder).Items >> _zipIt.vbs
echo objShell.NameSpace(ZipFile).CopyHere(source) >> _zipIt.vbs
echo wScript.Sleep 2000 >> _zipIt.vbs

CScript  _zipIt.vbs  %TEMPDIR%  D:\OutputZipFiles\someArchive.zip

pause

questionAnswers(2)

yourAnswerToTheQuestion