Description
Use this property to get the number of options in the current section. This section is specified by the Section or FileSection object. The options are counted in the current section only, not in its subsections.
Declaration
ProgObj.OptionCount
| Read-Only Property | Integer | 
| ProgObj | An expression, variable or parameter that specifies a reference to one of the objects listed in the Applies To section | |||
Applies To
The property is applied to the following objects:
Property Value
The number of options in the current section.
Remarks
If the ProgObj object corresponds to a registry key, the OptionCount property value does not include the option marked as (Default). This is because all registry keys have this option.
Example
The following code snippet determines how many values the registry key contains. After that, it iterates through the values and posts them to the test log.
JavaScript, JScript
function Test()
							{
  var Key, Name, Count, ValueName, Value;
  // Gets an object for the Windows system registry key
  Key = Storages.Registry("TestKey\\Subkey", HKEY_CURRENT_USER, AQRT_32_BIT, true);
  Name = Key.Name;
  // Determines how many values the key contains
  Count = Key.OptionCount;
  if (Count > 0)
    {
    Log.AppendFolder("The" + Name + " registry key contains the following values:");
    // Iterates through the values
    for (var i = 0; i < Count; i++)
      {
      // Obtains the name of the value
      ValueName = Key.GetOptionName(i);
      // Obtains the value
      Value = Key.GetOption(ValueName, "not specified");
      // Posts the value to the test log
      Log.Message(ValueName + ": " + Value);
      }
    Log.PopLogFolder();
    }
							}
						
Python
def Test():
  # Gets an object for the Windows system registry key
  Key = Storages.Registry("TestKey\\Subkey", HKEY_CURRENT_USER, AQRT_32_BIT, True)
  Name = Key.Name
  # Determines how many values the key contains
  Count = Key.OptionCount
  if (Count > 0):
    Log.AppendFolder("The" + Name + " registry key contains the following values:")
    # Iterates through the values
    for i in range (0, Count):
      # Obtains the name of the value
      ValueName = Key.GetOptionName(i)
      # Obtains the value
      Value = Key.GetOption(ValueName, "not specified")
      # Posts the value to the test log
      Log.Message(ValueName + ": " + str(Value))
    Log.PopLogFolder()VBScript
Sub Test
  Dim Key, Name, Count, ValueName, Value
  ' Gets an object for the Windows system registry key
  Set Key = Storages.Registry("TestKey\Subkey", HKEY_CURRENT_USER, AQRT_32_BIT, True)
  Name = Key.Name
  ' Determines how many values the key contains
  Count = Key.OptionCount
  If Count > 0 Then
    Log.AppendFolder("The" & Name & " registry key contains the following values:")
    ' Iterates through the values
    For i = 0 To Count - 1
      ' Obtains the name of the value
      ValueName = Key.GetOptionName(i)
      ' Obtains the value
      Value = Key.GetOption(ValueName, "not specified")
      ' Posts the value to the test log
      Log.Message(ValueName & ": " & Value)
    Next
    Log.PopLogFolder
  End If
End Sub
DelphiScript
procedure Test();
var Key, Name, Count, ValueName, Value, i;
begin
  // Gets an object for the Windows system registry key
  Key := Storages.Registry('TestKey\Subkey', HKEY_CURRENT_USER, AQRT_32_BIT, true);
  Name := Key.Name;
  // Determines how many values the key contains
  Count := Key.OptionCount;
  if Count > 0 then
    begin
    Log.AppendFolder('The' + Name + ' registry key contains the following values:');
    // Iterates through the values
    for i := 0 to Count - 1 do
      begin
      // Obtains the name of the value
      ValueName := Key.GetOptionName(i);
      // Obtains the value
      Value := Key.GetOption(ValueName, 'not specified');
      // Posts the value to the test log
      Log.Message(ValueName + ': ' + aqConvert.VarToStr(Value));
      end;
    Log.PopLogFolder;
    end;
end;
C++Script, C#Script
function Test()
							{
  var Key, Name, Count, ValueName, Value;
  // Gets an object for a Windows system registry key
  Key = Storages["Registry"]("TestKey\\Subkey", HKEY_CURRENT_USER, AQRT_32_BIT, true);
  Name = Key["Name"];
  // Determines how many values the key contains
  Count = Key["OptionCount"];
  if (Count > 0)
    {
    Log["AppendFolder"]("The" + Name + " registry key contains the following values:");
    // Iterates through the values
    for (var i = 0; i < Count; i++)
      {
      // Obtains the name of the value
      ValueName = Key["GetOptionName"](i);
      // Obtains the value
      Value = Key["GetOption"](ValueName, "not specified");
      // Posts the value to the test log
      Log["Message"](ValueName + ": " + Value);
      }
    Log["PopLogFolder"]();
    }
							}
						
