Objects, counters, or instances seem to be missing or invalid.
Cause: Test routines that run when you start Performance have detected a problem with installed counters and have disabled the counters automatically to prevent the counters from slowing the system. Disabled objects and counters do not appear in the Add Counters dialog box.
Solution #1: You can enable the disabled counters. Using Registry Editor, change the value under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Service_name\Performance\Disable Performance Counters from 1 for disable to 0 for enable. Note that counters that have been disabled after initial testing are likely to contain errors and may cause system problems. For information about debugging problems with counter DLLs, see the Microsoft Web site.
Solution #2: You can turn off the counter DLL automatic testing feature or adjust the level of testing. Using Registry Editor, locate the Configuration Flags subkey under HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib and change the value of the REG_DWORD entry for this subkey:
Test for buffer alignment errors and report any critical error detected.
Do not test for data buffer alignment errors.
Do not disable DLLs when errors are detected.
Windows will still write messages to the Event Log if this option is used.
Disable all performance counter function testing.
Enable the disabling of performance objects if they exceed a timeout value.
Normally Windows will merely write a message to the Event Log.
Enable the collection of performance and error statistics for each performance object. This is the default setting.
Incorrectly editing the registry may severely damage your system. Before making changes to the registry, you should back up any valued data on the computer.
Cause: The process that starts the object counters is not started or installed.
Solution: Use Task Manager to verify that the process is running. If so, use Exctrlst.exe on the Resource Kit companion CD to verify that the counter DLL is enabled.
Cause: The counters haven't been enabled.
Solution: Make sure that the service or feature that provides the counter has been installed or configured.
Cause: The DLL that installs the counters is generating errors. An example is if the counter does not handle localization functions correctly.
Solution: Check Event Viewer to see whether the counter DLL or the Performance Data Helper reported any errors. If necessary, you can disable counter DLLs that are causing errors by using Exctrlst.exe on the Resource Kit companion CD.
Cause: You are trying to monitor a 16-bit or MS-DOS application. Only 32-bit processes appear in the instances list. Active 16-bit processes appear as threads running in a Windows Virtual DOS Machine (NTVDM) process.
Solution: Monitor the application via the NTVDM process.
See also: Monitoring legacy programs
Cause: The instance you want to monitor is not currently active. If you are configuring System Monitor to collect real-time data, you can only select active instances for data collection. (If you are viewing logged data, you can select inactive instances for which the log contains data.) If you select the process and it stops after you've selected it, it will continue to appear in the list box but the reported data will be zeroes.
Solution: Make sure the instance is active.