Magnus Brading
Almighty Author

Group: Super Administrators
Posts: 2751
Joined: Aug. 2002 |
 |
Posted: July 17 2005,22:33 |
 |
You cannot set macro property values like that, you must define your parameters specifically in the macro file. This is an excerpt from the Mp3/Tag Studio help file, which can be found in the "Macros" section of the help file, under the "Advanced macro capabilities" sub section:
Quote | Macro parameters
For advanced users, there is a possibility to use variable parameter values for any recorded macro.
All macros are saved as separate files in the subfolder "Macros" of the Mp3/Tag Studio installation directory, having the file extension ".mtm". These files are normal text files, and you can open them in e.g. Notepad.
As you will see, all the recorded operations of a macro will be saved inside these files in the following way:
---------------------------------------------------------
[MacroOperationName] MacroOperationParameterName1=MacroOperationParameterValue1 MacroOperationParameterName2=MacroOperationParameterValue2 ... {MacroOperationSubsectionName} MacroOperationSubsectionParameterName1=MacroOperationSubsectionParameterValue1 MacroOperationSubsectionParameterName2=MacroOperationSubsectionParameterValue2 ...
---------------------------------------------------------
To make the macros more flexible, you can specify that some (parts of) values should be dynamic, and entered by the user each time the macro is executed. This is exactly what the macro parameters are used for.
Using the example above as a reference, here is an example of how you define and use macro parameters:
---------------------------------------------------------
param %MyParam1% : string = <Artist> param %MyParam2% : integer = 25 [MacroOperationName] MacroOperationParameterName1=%MyParam2% MacroOperationParameterName2=%MyParam1% - <Title>.mp3 ... {MacroOperationSubsectionName} MacroOperationSubsectionParameterName1=MacroOperationSubsectionParameterValue1 MacroOperationSubsectionParameterName2=MacroOperationSubsectionParameterValue2 ...
---------------------------------------------------------
As you can see above, macro parameter definitions have the following format:
param %ParameterName% [: ParameterType] [= DefaultValue]
Each parameter definition line begins with the word "param", followed by a variable name enclosed in percentage signs (the percentage signs are mandatory). Except for the enclosing percentage signs, a variable name can only contain letters, numbers and underscores (_). At this point you have already a valid parmeter definition, and can stop right there if you like, but there are two more optional part of the definition that can be used for your comfort.
First, you can enter a colon followed by a type definition for the variable. There are three possible data types, namely string, integer and boolean. This type definition will make the program help you check the validity of the values that the user supplies for the parameter in question during the execution of the macro. It will also make the program display specialized input dialogs for the different data types when executing the macros from the GUI. Parameters of the type integer will only accept integers for their values, and parameters of the type boolean will only accept the strings TRUE and FALSE for their values. Finally, parameters of the type string will accept arbitrary strings for their values, including spaces and any special characters. If you leave out the type definition completely, it will default to string.
The second optional part of the parameter definition is the default value definition. It consists of an equal sign followed by a default value for the parameter. When executing macros from the GUI, this value will be automatically suggested to the user, and when executing macros from the command-line, this value will be used if no other value has been specified for the parameter in question.
Here follow some examples of valid parameter definitions:
param %SomeParameterName1% param %SomeParameterName2% : integer param %SomeParameterName3% : integer = 5 param %SomeParameterName4% = 5 param %SomeParameterName5% : boolean param %SomeParameterName6% : boolean = TRUE param %SomeParameterName7% = TRUE param %SomeParameterName8% : string param %SomeParameterName9% : string = Any string here param %SomeParameterName10% : string = <Artist> - <Title>.mp3 param %SomeParameterName11% = <Artist> - <Title>.mp3
Note: All parameter definitions must be located at the very top of the macro file! |
Also, this thread belongs in the support forum, and I will move it there soon.
-------------- Software author and website owner
|