Microsoft KB Archive/181504

= PRB: Developer Studio Macro's ExecuteCommand Requires Quotes =

Article ID: 181504

Article Last Modified on 12/2/2003

-

APPLIES TO


 * Microsoft Visual C++ 5.0 Enterprise Edition
 * Microsoft Visual C++ 6.0 Enterprise Edition
 * Microsoft Visual C++ 5.0 Professional Edition
 * Microsoft Visual C++ 6.0 Professional Edition
 * Microsoft Visual C++ 6.0 Standard Edition

-



This article was previously published under Q181504



SYMPTOMS
A VBScript macro ExecuteCommand method does not perform its specified command. Instead, it may perform an unexpected command or have no effect at all. Often, the macro generates no error messages.



CAUSE
The ExecuteCommand method takes one parameter--the keyword that Developer Studio will attempt to execute. If this keyword is not enclosed in quotation marks, the problems above may occur.



RESOLUTION
Enclose the command keyword following the ExecuteCommand method in quotation marks.

If this does not correct the problem, verify that the command is valid:
 * 1) Click Customize on the Tools menu.
 * 2) Click the Keyboard tab.
 * 3) In the drop-down box labeled Category, select All Commands. Make sure that the command appears in the "Commands" list box.

Finally, check to see whether the command would be enabled at the point that the macro calls it. For example, the following statement activates the Project Settings dialog box:   ExecuteCommand "ProjectSettings" However, if there is no active project when the macro executes, that command will have no effect.

For additional information, please see the following article in the Microsoft Knowledge Base:

165681 INFO: Visual C++ 5.0 Readme, Build Issues



MORE INFORMATION
Always use quotation marks around the command keyword of ExecuteCommand. Developer Studio's behavior varies otherwise. Some commands, such as "Build", work without quotation marks. The "New" command generates a syntax error if it is not enclosed in quotation marks. Most commands perform no action at all when quotation marks are absent.

The ExecuteCommand method requires a string parameter. This can be a literal string or a string variable. For example, the word "New" might be assigned to a string variable, such as "MyNewVar". This variable can then be used in place of "New" with the same result: Dim MyNewVar MyNewVar = "New" ExecuteCommand MyNewVar

