CMDebug Windows Batch File Debugger

Edit and debug your Windows batch files with CMDebug

CMDebug v21 : IDE and Batch Script Debugger

We have a number of users who tell us that they want to use Take Command’s batch debugger, but their company only allows the use of CMD.EXE to run batch files.

Although we do our best to ensure that TCC and TCC-RT remain upwardly compatible with CMD.EXE, inevitably a few (mostly obscure) incompatibilities creep in when we add new features to Take Command and TCC. For example, the header in DIR and VOL is two lines in CMD, but combined in one line in TCC (to avoid unnecessary scrolling). That seems harmless, but we have encountered some batch files written for CMD that attempt to parse the output of those commands, and they fail with the single-line TCC output.

CMDebug, now available in the public beta version on our web site at:

is a stand-alone version of the Take Command IDE and batch debugger component. It is intended for developers who need to create & debug batch files to run in CMD.EXE or TCC-RT.

If you select the “TCC Syntax” option, CMDebug provides the full TCC-RT command set. If you select the “CMD Syntax” option, CMDebug will maximize CMD.EXE compatibility and disable TCC-only internal commands, variables, and functions. Some internal CMD / TCC commands will also behave slightly differently or modify their display output in order to match CMD’s behavior more closely.

We are committed to getting CMDebug as close to full CMD.EXE syntax compatibility as possible. Try CMDebug with your most complicated CMD.EXE-only batch files. If they don’t work with CMDebug, please send the batch file (and any required support files) to and we’ll do our best to get them running in both CMDebug & TCC.

I will be posting the newly-discovered CMD bugs / undocumented features / compatibility issues as we discover them. A preview of Adventures in CMD Compatibility #1 – what does CMD do when you double quote a SET command line? (And why would you do that?)

Add Comment

Required fields are marked *. Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>