Similar to Visual Studio, Code Builder provides a tool called the External Tools dialog. With this tool, you can call external tools to help you develop and debug your applications. To open this dialog, you can click Tools: External Tools... on the menu bar.

| Note: The Use output window option is not available for GUID applicationa files. |
Start the external tool from the Tools menu, the arguments you selected will be automatically passed to the tool. If you selected Prompt for Arguments, a dialog box will pop up, prompting you to edit the Arguments.

All external tools you added will appear in the Menu contents box. You can use the buttons to the right of the menu contents box to edit the order of the external tools in the dialog box. As the order of the items in the menu contents changes the order of appearance in the Tools menu is also changed accordingly.
| Add | Add an external tool to the Tools menu. |
|---|---|
| Delete | Delete the selected external tool(s) from the Tools menu. |
| Move Up | Move up the position of the selected external tool in the Tools menu by one item. |
| Move Down | Move down the position of the selected external tool in the Tools menu by one item. |
The following table shows the argument you could use to pass variables to external tools:
| Name | Argument | Description |
|---|---|---|
| Item Path | $(ItemPath) | The complete file name of the current source (defined as drive + path + file name). |
| Item Directory | $(ItemDir) | The directory of the current source (defined as drive + path). |
| Item File Name | $(ItemFilename) | The file name of the current source (defined as file name). |
| Item Extension | $(ItemExt) | The file name extension of the current source. |
| Current Line | $(CurLine) | The current line position of the cursor in the editor. |
| Current Column | $(CurCol) | The current column position of the cursor in the editor. |
| Current Text | $(CurText) | The selected text. |
| Target Path | $(TargetPath) | The complete file name of the item to be built, (defined as drive + path + file name). |
| Target Directory | $(TargetDir) | The directory of the item to be built. |
| Target Name | $(TargetName) | The file name of the item to be built. |
| Target Extension | $(TargetExt) | The file name extension of the item to be built. |
| Project Directory | $(ProjDir) | The directory of the current project (defined as drive + path). |
| Project file name | $(ProjFileName) | The file name of the current project (defined as drive + path + file name). |
| Solution Directory | $(SolutionDir) | The directory of the current solution (defined as drive + path). |
| Solution file name | $(SolutionFileName) | The file name of the current solution (defined as drive + path + file name). |
| Binaries Directory | $(BinDir) | The directory that’s the final location of the binary that’s being built (defined as drive + path). |