diff --git a/xml/Microsoft.Win32/Registry.xml b/xml/Microsoft.Win32/Registry.xml index 021ee161fbc..67eb3e7542a 100644 --- a/xml/Microsoft.Win32/Registry.xml +++ b/xml/Microsoft.Win32/Registry.xml @@ -367,25 +367,23 @@ The following code example stores values of several data types in an example key ## Remarks `LocalMachine` contains five keys: - Hardware + `Hardware`\ Describes the physical hardware in the computer, the way device drivers use that hardware, and mappings and related data that link kernel-mode drivers with user-mode code. All data in this key is recreated each time the system is started. The Description subkey describes the actual computer hardware. The DeviceMap subkey contains miscellaneous data in formats specific to particular classes of drivers. The ResourceMap subkey describes which device drivers claim which hardware resources. The Windows NT Diagnostics program (Winmsdp.exe) can report on its contents in an easy-to-read form. - SAM - The directory services database of security information for user and group accounts, and for the domains in Windows 2000 Server (SAM is the Security Account Manager, known as the directory services database). + `SAM`\ + The directory services database of security information for user and group accounts, and for the domains in Windows Server (SAM is the Security Account Manager, known as the directory services database). - Security - Contains the local security policy, such as specific user rights. This key is used only by the Windows 2000 security subsystem. + `Security`\ + Contains the local security policy, such as specific user rights. This key is used only by the Windows security subsystem. - Software + `Software`\ The per-computer software database. This key contains data about software installed on the local computer, along with various items of miscellaneous configuration data. - System - Controls system startup, device driver loading, Windows 2000 services, and operating system behavior. + `System`\ + Controls system startup, device driver loading, Windows services, and operating system behavior. By convention, if similar data exists under and under , the data in takes precedence. However, values in this key can also extend (rather than replace) data in Registry.LocalMachine. Also, some items (such as device driver loading entries) are meaningless if they occur outside of Registry.LocalMachine. - - ## Examples The following example demonstrates how to retrieve the subkeys of this key, and prints their names to the screen. Use the method to create an instance of the particular subkey of interest. You can then use other operations in to manipulate that key. @@ -442,11 +440,6 @@ The following code example stores values of several data types in an example key To obtain performance data from a remote system, you must use the method, with the computer name of the remote system and the Registry.PerformanceData key. This call retrieves a key representing the performance data for the remote system. To retrieve the data, call using this key, rather than the Registry.PerformanceData key. -> [!NOTE] -> On Windows Server 2003, a user must at least belong to the Performance Monitor Users group in order to access subkeys of this base key. - - - ## Examples The following example demonstrates how to retrieve the subkeys of this key, and prints their names to the screen. Use the method to create an instance of the particular subkey of interest. You can then use other operations in to manipulate that key. Note that this example can often return no results, since there might be no performance data. diff --git a/xml/Microsoft.Win32/RegistryKey.xml b/xml/Microsoft.Win32/RegistryKey.xml index cf0eeb72902..0ef569cca37 100644 --- a/xml/Microsoft.Win32/RegistryKey.xml +++ b/xml/Microsoft.Win32/RegistryKey.xml @@ -211,10 +211,10 @@ The user does not have the permissions required to create or open the registry key. The on which this method is being invoked is closed (closed keys cannot be accessed). The cannot be written to; for example, it was not opened as a writable key , or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -277,10 +277,10 @@ contains an invalid value. The on which this method is being invoked is closed (closed keys cannot be accessed). The cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -340,10 +340,10 @@ is . The user does not have the permissions required to create or open the registry key. The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -397,10 +397,10 @@ is . The current object is closed (closed keys cannot be accessed). The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key or an attempt to create a key in the root. The user does not have the permissions required to create or open the registry key. @@ -480,10 +480,10 @@ contains an invalid value. The on which this method is being invoked is closed (closed keys cannot be accessed). The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -547,10 +547,10 @@ does not specify a valid Option The user does not have the permissions required to create or open the registry key. The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -614,10 +614,10 @@ is . The current object is closed. Closed keys cannot be accessed. The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key or an attempt to create a key in the root. The user does not have the permissions required to create or open the registry key. @@ -837,10 +837,10 @@ is . - Deletion of a root hive is attempted. - - -or- - + Deletion of a root hive is attempted. + + -or- + does not specify a valid registry subkey. An I/O error has occurred. The user does not have the permissions required to delete the key. @@ -886,10 +886,10 @@ Indicates whether an exception should be raised if the specified subkey cannot be found. If this argument is and the specified subkey does not exist, an exception is raised. If this argument is and the specified subkey does not exist, no action is taken. Deletes the specified subkey and any child subkeys recursively, and specifies whether an exception is raised if the subkey is not found. To be added. - An attempt was made to delete the root hive of the tree. - - -or- - + An attempt was made to delete the root hive of the tree. + + -or- + does not specify a valid registry subkey, and is . is . @@ -1021,10 +1021,10 @@ - is not a valid reference to a value and is . - - -or- - + is not a valid reference to a value and is . + + -or- + is . The user does not have the permissions required to delete the value. The being manipulated is closed (closed keys cannot be accessed). @@ -1745,13 +1745,11 @@ The user does not have the permissions required to read from the registry key. The that contains the specified value is closed (closed keys cannot be accessed). - The subkey that contains the specified value does not exist. - - -or- - - The name/value pair specified by does not exist. - - This exception is not thrown on Windows 95, Windows 98, or Windows Millennium Edition. + The subkey that contains the specified value does not exist. + + -or- + + The name/value pair specified by does not exist. The user does not have the necessary registry rights. @@ -2480,10 +2478,10 @@ contains an invalid value. The is closed (closed keys cannot be accessed). - includes invalid registry rights values. - - -or- - + includes invalid registry rights values. + + -or- + The user does not have the requested permissions. @@ -2644,13 +2642,8 @@ is an unsupported data type. The that contains the specified value is closed (closed keys cannot be accessed). - The is read-only, and cannot be written to; for example, the key has not been opened with write access. - - -or- - - The object represents a root-level node, and the operating system is Windows Millennium Edition or Windows 98. + The is read-only, and cannot be written to; for example, the key has not been opened with write access. The user does not have the permissions required to create or modify registry keys. - The object represents a root-level node, and the operating system is Windows 2000, Windows XP, or Windows Server 2003. @@ -2742,13 +2735,8 @@ is . The type of did not match the registry data type specified by , therefore the data could not be converted properly. The that contains the specified value is closed (closed keys cannot be accessed). - The is read-only, and cannot be written to; for example, the key has not been opened with write access. - - -or- - - The object represents a root-level node, and the operating system is Windows Millennium Edition or Windows 98. + The is read-only, and cannot be written to; for example, the key has not been opened with write access. The user does not have the permissions required to create or modify registry keys. - The object represents a root-level node, and the operating system is Windows 2000, Windows XP, or Windows Server 2003. @@ -2952,10 +2940,10 @@ Gets the view that was used to create the registry key. - The view that was used to create the registry key. - - -or- - + The view that was used to create the registry key. + + -or- + , if no view was used. Defines the possible types of counters. Each counter is assigned a counter type. The counter type determines how the counter data is calculated, averaged, and displayed. - - - + To be added. diff --git a/xml/System.Diagnostics/EventLog.xml b/xml/System.Diagnostics/EventLog.xml index d46b995697b..e0e6f3310dd 100644 --- a/xml/System.Diagnostics/EventLog.xml +++ b/xml/System.Diagnostics/EventLog.xml @@ -68,7 +68,7 @@ On Windows, User Account Control (UAC) determines the credentials of a user. If To write to an event log, specify or create an event source ( property). You must have administrative credentials on the computer to create a new event source. The event source registers your application with the event log as a valid source of entries. You can use the event source to write to only one log at a time. The property can be any random string, but the name must be distinct from other sources on the computer. The event source is typically the name of the application or another identifying string. Trying to create a duplicate value throws an exception. However, a single event log can be associated with multiple sources. - If the event source for the event log associated with the instance doesn't exist, a new event source is created. To create an event source in Windows Vista and later or Windows Server 2003, you must have administrative credentials. + If the event source for the event log associated with the instance doesn't exist, a new event source is created. To create an event source on Windows, you must have administrative credentials. This requirement is because all event logs, including Security logs, must be searched to determine whether the event source is unique. Users don't have permission to access the Security log; therefore, a is thrown. @@ -622,7 +622,7 @@ On Windows, User Account Control (UAC) determines the credentials of a user. If The method uses the input `sourceData` , and properties to create registry values on the target computer for the new source and its associated event log. A new source name cannot match an existing source name or an existing event log name on the target computer. If the property is not set, the source is registered for the Application event log. If the is not set, the source is registered on the local computer. > [!NOTE] -> To create an event source in Windows Vista and later or Windows Server 2003, you must have administrative privileges. +> To create an event source on Windows, you must have administrative privileges. > > The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the security log; therefore, a is thrown. > @@ -858,7 +858,7 @@ SVC_UPDATE.EXE If `logName` is `null` or an empty string ("") when you call , the log defaults to the Application log. If the log does not exist on the local computer, the system creates a custom log and registers your application as a for that log. > [!NOTE] -> To create an event source in Windows Vista and later or Windows Server 2003, you must have administrative privileges. +> To create an event source on Windows, you must have administrative privileges. > > The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the security log; therefore, a is thrown. > @@ -994,7 +994,7 @@ SVC_UPDATE.EXE You only need to create an event source if you are writing to the event log. Before writing an entry to an event log, you must register the event source with the event log as a valid source of events. When you write a log entry, the system uses the to find the appropriate log in which to place your entry. If you are reading the event log, you can either specify the , or a and . > [!NOTE] -> To create an event source in Windows Vista and later or Windows Server 2003, you must have administrative privileges. +> To create an event source on Windows, you must have administrative privileges. > > The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. In Windows Vista and later, users do not have permission to access the security log; therefore, a is thrown. > @@ -2917,7 +2917,7 @@ SVC_UPDATE.EXE Because this method accesses the registry, you must have the appropriate registry permissions on the local computer; otherwise, a will be thrown. > [!NOTE] -> To search for an event source in Windows Vista and later or Windows Server 2003, you must have administrative privileges. +> To search for an event source on Windows, you must have administrative privileges. > > The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the security log; therefore, a is thrown. > @@ -3006,7 +3006,7 @@ SVC_UPDATE.EXE Because this method accesses the registry, you must have the appropriate registry permissions on the given server; otherwise, a will be thrown. > [!NOTE] -> To search for an event source in Windows Vista and later or Windows Server 2003, you must have administrative privileges. +> To search for an event source on Windows, you must have administrative privileges. > > The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the security log; therefore, a is thrown. > diff --git a/xml/System.Diagnostics/PerformanceCounter.xml b/xml/System.Diagnostics/PerformanceCounter.xml index 7d0e3eee83a..e58f70f32ce 100644 --- a/xml/System.Diagnostics/PerformanceCounter.xml +++ b/xml/System.Diagnostics/PerformanceCounter.xml @@ -50,13 +50,13 @@ To publish performance counter data, create one or more custom counters using the method, create an instance of the class, set the , and, optionally, or properties, and then call the , , or methods, or set the property to change the value of your custom counter. > [!NOTE] -> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. +> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. The counter is the mechanism by which performance data is collected. The registry stores the names of all the counters, each of which is related to a specific area of system functionality. Examples include a processor's busy time, memory usage, or the number of bytes received over a network connection. Each counter is uniquely identified through its name and its location. In the same way that a file path includes a drive, a directory, one or more subdirectories, and a file name, counter information consists of four elements: the computer, the category, the category instance, and the counter name. - The counter information must include the category, or performance object, that the counter measures data for. A computer's categories include physical components, such as processors, disks, and memory. There are also system categories, such as processes and threads. Each category is related to a functional element within the computer and has a set of standard counters assigned to it. These objects are listed in the Performance object drop-down list of the Add Counters dialog box within the Windows 2000 System Monitor, and you must include them in the counter path. Performance data is grouped by the category to which is it related. + The counter information must include the category, or performance object, that the counter measures data for. A computer's categories include physical components, such as processors, disks, and memory. There are also system categories, such as processes and threads. Each category is related to a functional element within the computer and has a set of standard counters assigned to it. These objects are listed in the Performance object drop-down list of the Add Counters dialog box within the Windows System Monitor, and you must include them in the counter path. Performance data is grouped by the category to which is it related. In certain cases, several copies of the same category can exist. For example, several processes and threads run simultaneously, and some computers contain more than one processor. The category copies are called category instances, and each instance has a set of standard counters assigned to it. If a category can have more than one instance, an instance specification must be included in the counter information. @@ -126,7 +126,7 @@ This constructor does not initialize the performance counter, so it does not associate the instance with an existing counter on the local computer. To point to a specific performance counter, set the , , and, optionally, the and properties before reading any other properties or attempting to read from a counter. To write to a performance counter, set the property to `false`. > [!NOTE] -> The attribute applied to this member has the following property value: | . The does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). For more information, see the class or [SQL Server Programming and Host Protection Attributes](/dotnet/framework/performance/sql-server-programming-and-host-protection-attributes). +> The attribute applied to this member has the following property value: | . The does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). For more information, see the class or [SQL Server Programming and Host Protection Attributes](/dotnet/framework/performance/sql-server-programming-and-host-protection-attributes). ## Examples The following code example creates a default instance of the class. After the instance is created, the , , and property values are set, and the results of a call to the method are displayed. @@ -185,7 +185,7 @@ This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. The values that you pass in for the and properties must point to an existing performance counter on the local computer. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. ]]> @@ -263,10 +263,10 @@ This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. The values that you pass in for the and properties must point to an existing performance counter on the local computer. If the performance counter instance that you point to is not valid, calling the constructor throws an exception. > [!NOTE] -> You can use this overload to connect to a system counter, but you cannot write to a system counter. Therefore, setting `readOnly` to `false` when connecting to a system counter causes the constructor to throw an exception. +> You can use this overload to connect to a system counter, but you cannot write to a system counter. Therefore, setting `readOnly` to `false` when connecting to a system counter causes the constructor to throw an exception. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. ## Examples The following code example creates an instance of the class. The example passes in category names, counter names, and a flag value indicating that the counter is not read-only. This code example is part of a larger example for the class. @@ -438,7 +438,7 @@ This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. The values that you pass in for the , , and properties must point to an existing performance counter on the local computer. If the performance counter instance that you point to is not valid, calling the constructor throws an exception. > [!NOTE] -> You can use this overload to connect to a system counter, but you cannot write to a system counter. Therefore, setting `readOnly` to `false` when connecting to a system counter causes the constructor to throw an exception. +> You can use this overload to connect to a system counter, but you cannot write to a system counter. Therefore, setting `readOnly` to `false` when connecting to a system counter causes the constructor to throw an exception. To create a performance category instance, specify an `instanceName` on the constructor. If the category instance specified by `instanceName` already exists the new object will reference the existing category instance. @@ -532,7 +532,7 @@ This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the specified computer. The values that you pass in for the , , and properties must point to an existing performance counter. If the performance counter instance you point to is not valid, calling the constructor throws an exception. This overload can access any read-only or read/write counter, but does so in a read-only mode. A instance created using this overload cannot write to the counter, even if the counter itself is read/write. > [!NOTE] -> You cannot write to remote performance counters. There is no overload that allows you to specify a read/write instance of the class that connects to a remote computer. +> You cannot write to remote performance counters. There is no overload that allows you to specify a read/write instance of the class that connects to a remote computer. To create a performance category instance, specify an `instanceName` on the constructor. If the category instance specified by `instanceName` already exists the new object will reference the existing category instance. @@ -540,7 +540,7 @@ > To read performance counters in Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > [!NOTE] -> In Windows Vista, when the remote computer is a member of a workgroup, you may need to disable UAC so that the local user account is not filtered and can be elevated to an administrator account. For security reasons, disabling UAC should be a last resort. For information on disabling UAC, see [User Account Control and WMI](/windows/win32/wmisdk/user-account-control-and-wmi). +> In Windows Vista, when the remote computer is a member of a workgroup, you may need to disable UAC so that the local user account is not filtered and can be elevated to an administrator account. For security reasons, disabling UAC should be a last resort. For information on disabling UAC, see [User Account Control and WMI](/windows/win32/wmisdk/user-account-control-and-wmi). ]]> @@ -959,7 +959,7 @@ You can write only to custom counters. All system counters are read-only. > [!NOTE] -> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. +> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. ]]> @@ -1147,7 +1147,7 @@ You can write only to custom counters. All system counters are read-only. > [!NOTE] -> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. +> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. ]]> @@ -1207,7 +1207,7 @@ You can write only to custom counters. All system counters are read-only. > [!NOTE] -> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. +> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. @@ -1316,7 +1316,7 @@ ## Remarks > [!NOTE] -> Instance names must be shorter than 128 characters in length. +> Instance names must be shorter than 128 characters in length. In some situations, categories are subdivided into instances, which track data about multiple occurrences of the object that a category relates to. Instances apply to the category as whole, rather than to individual counters. Every counter within a category has each instance defined for the category. For example, the Process category contains instances named Idle and System. Every counter within the Process category thus contains data for each instance, showing information about either idle processes or system processes. @@ -1327,7 +1327,7 @@ To create a performance category instance, specify an `instanceName` on the constructor. If the category instance specified by `instanceName` already exists the new object will reference the existing category instance. > [!NOTE] -> Do not use the characters "(", ")", "#", "\\", or "/" in the instance name. If any of these characters are used, the Performance Console (see [Runtime Profiling](/dotnet/framework/debug-trace-profile/runtime-profiling)) may not correctly display the instance values. +> Do not use the characters "(", ")", "#", "\\", or "/" in the instance name. If any of these characters are used, the Performance Console (see [Runtime Profiling](/dotnet/framework/debug-trace-profile/runtime-profiling)) may not correctly display the instance values. If the instance name is automatically generated and might contain the characters "(", ")", "#", "\\", or "/", use the character mapping in the following table. @@ -1498,10 +1498,10 @@ ## Remarks > [!NOTE] -> If the calculated value of a counter depends on two counter reads, the first read operation returns 0.0. Resetting the performance counter properties to specify a different counter is equivalent to creating a new performance counter, and the first read operation using the new properties returns 0.0. The recommended delay time between calls to the method is one second, to allow the counter to perform the next incremental read. +> If the calculated value of a counter depends on two counter reads, the first read operation returns 0.0. Resetting the performance counter properties to specify a different counter is equivalent to creating a new performance counter, and the first read operation using the new properties returns 0.0. The recommended delay time between calls to the method is one second, to allow the counter to perform the next incremental read. > [!NOTE] -> To read performance counters, you must have administrative privileges. In Windows Vista, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> To read performance counters, you must have administrative privileges. In Windows Vista, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1561,7 +1561,7 @@ Because system counters are read-only, you can get but not set their raw values. > [!NOTE] -> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. +> The , , and methods use interlocks to update the counter value. This helps keep the counter value accurate in multithreaded or multiprocess scenarios, but also results in a performance penalty. If you do not need the accuracy that interlocked operations provide, you can update the property directly for up to a 5 times performance improvement. However, in multithreaded scenarios, some updates to the counter value might be ignored, resulting in inaccurate data. > [!NOTE] > To read performance counters in Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. @@ -1671,7 +1671,7 @@ You can remove an instance only for a custom counter. All system counters are read-only, so attempting to remove one of them throws an exception. > [!NOTE] -> To avoid a possible race condition when the performance counter shared memory is released, it is recommended that the method be called from the event handler. +> To avoid a possible race condition when the performance counter shared memory is released, it is recommended that the method be called from the event handler. To create a performance category instance, specify an `instanceName` on the constructor. If the category instance specified by `instanceName` already exists the new object will reference the existing category instance. diff --git a/xml/System.Diagnostics/PerformanceCounterCategory.xml b/xml/System.Diagnostics/PerformanceCounterCategory.xml index 1639c0dd918..33050bb2f7c 100644 --- a/xml/System.Diagnostics/PerformanceCounterCategory.xml +++ b/xml/System.Diagnostics/PerformanceCounterCategory.xml @@ -39,7 +39,7 @@ ## Remarks > [!IMPORTANT] -> Creating or deleting a performance counter requires synchronization of the underlying code by using a named mutex. If a highly privileged application locks the named mutex, attempts to create or delete a performance counter causes the application to stop responding until the lock is released. To help avoid this problem, never grant permission to untrusted code. In addition, permission potentially allows other permissions to be bypassed and should only be granted to highly trusted code. +> Creating or deleting a performance counter requires synchronization of the underlying code by using a named mutex. If a highly privileged application locks the named mutex, attempts to create or delete a performance counter causes the application to stop responding until the lock is released. To help avoid this problem, never grant permission to untrusted code. In addition, permission potentially allows other permissions to be bypassed and should only be granted to highly trusted code. The instance's property is displayed in the Performance Object field of the Performance Viewer application's Add Counter dialog box. @@ -52,10 +52,10 @@ Although your system makes many more counter categories available, the categories that you will probably interact with most frequently are the Cache, Memory, Objects, PhysicalDisk, Process, Processor, Server, System, and Thread categories. > [!IMPORTANT] -> The method in the class will release the counter and, if the reuse option is selected for that category, the instance of the counter will be reused. This could cause a race condition if another process or even another part of the code is trying to write to the counter instance. +> The method in the class will release the counter and, if the reuse option is selected for that category, the instance of the counter will be reused. This could cause a race condition if another process or even another part of the code is trying to write to the counter instance. > [!NOTE] -> It is strongly recommended that new performance counter categories be created during the installation of the application, not during the execution of the application. This allows time for the operating system to refresh its list of registered performance counter categories. If the list has not been refreshed, the attempt to use the category will fail. +> It is strongly recommended that new performance counter categories be created during the installation of the application, not during the execution of the application. This allows time for the operating system to refresh its list of registered performance counter categories. If the list has not been refreshed, the attempt to use the category will fail. > [!NOTE] > Performance counter categories installed with .NET use separate shared memory, with each performance counter category having its own memory. You can specify the size of separate shared memory by creating a DWORD named FileMappingSize in the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\\*\*\Performance. The FileMappingSize value is set to the shared memory size of the category. The default size is 131072 decimal. @@ -439,11 +439,11 @@ If you have not set the property, this method uses the local computer ("."). > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. ## Examples The following code example determines whether a exists. It gets a category name, counter name, and computer name from the command line, if they are given. It creates a object using the appropriate . It then uses the method to determine whether the specified exists, and informs the user. @@ -508,11 +508,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. ## Examples The following code example determines whether a exists. It gets a category name, counter name, and computer name from the command line, if they are given. It uses the static overloads of the method to determine whether the specified name exists in the . The overload is selected based on whether a computer name is provided. @@ -583,11 +583,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. ## Examples The following code example determines whether a exists. It gets a category name, counter name, and computer name from the command line, if they are given. It uses the static overloads of the method to determine whether the specified name exists in the . The overload is selected based on whether a computer name is provided. @@ -680,11 +680,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. ]]> @@ -856,11 +856,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. ]]> @@ -941,14 +941,14 @@ Performance counter categories installed with .NET use separate shared memory, with each performance counter category having its own memory. You can specify the size of separate shared memory by creating a DWORD named FileMappingSize in the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\\*\*\Performance. The FileMappingSize value is set to the shared memory size of the category. The default size is 131072 decimal. If the FileMappingSize value is not present, the `fileMappingSize` attribute value for the `performanceCounters` element specified in the Machine.config file is used, causing additional overhead for configuration file processing. You can realize a performance improvement for application startup by setting the file mapping size in the registry. > [!NOTE] -> It is strongly recommended that new performance counter categories be created during the installation of the application, not during the execution of the application. This allows time for the operating system to refresh its list of registered performance counter categories. If the list has not been refreshed, the attempt to use the category will fail. +> It is strongly recommended that new performance counter categories be created during the installation of the application, not during the execution of the application. This allows time for the operating system to refresh its list of registered performance counter categories. If the list has not been refreshed, the attempt to use the category will fail. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1027,11 +1027,11 @@ You can delete only custom performance counter categories from the system. You cannot delete a counter from a category. To do so, delete the category and recreate the category with the counters you want to retain. To avoid an exception, confirm that the category exists before you attempt to delete it. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1104,11 +1104,11 @@ Use of the method can result in a noticeable performance penalty while all performance counters on the machine are checked for availability. If you are only writing to a performance counter, you can avoid the global search for performance counters by creating the performance counter when the application is installed and assuming the category exists when accessing the counter. There is no way to avoid the performance counter search when reading from performance counters. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1174,11 +1174,11 @@ Use of the method can result in a noticeable performance penalty while all performance counters on the machine are checked for availability. If you are only writing to a performance counter, you can avoid the global search for performance counters by creating the performance counter when the application is installed and assuming the category exists when accessing the counter. There is no way to avoid the performance counter search when reading from performance counters. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1255,11 +1255,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1319,11 +1319,11 @@ To retrieve the categories on the local computer, use another overload or pass "." as the `machineName` parameter. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1390,11 +1390,11 @@ For more information about performance object instances, see the class overview. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1460,11 +1460,11 @@ For more information about performance object instances, see the class overview. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1528,11 +1528,11 @@ ## Remarks > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1609,11 +1609,11 @@ This overload of is not `static`. It requires you to create a object and to set the property. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1682,11 +1682,11 @@ It is not possible to determine whether a performance object instance exists on a computer without specifying a specific category to look in. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1762,11 +1762,11 @@ You can use "." to specify the local computer. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. @@ -1886,11 +1886,11 @@ Reading the entire category at once can be as efficient as reading a single counter because of the way that the system provides the data. > [!NOTE] -> To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges. +> To read performance counters from a non-interactive logon session on Windows, you must either be a member of the Performance Monitor Users group or have administrative privileges. > -> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. +> To avoid having to elevate your privileges to access performance counters in Windows Vista and later, add yourself to the Performance Monitor Users group. > -> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. +> In Windows Vista and later, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator. diff --git a/xml/System.Diagnostics/Process.xml b/xml/System.Diagnostics/Process.xml index d3393b3aa12..892c99dbfe5 100644 --- a/xml/System.Diagnostics/Process.xml +++ b/xml/System.Diagnostics/Process.xml @@ -1651,8 +1651,6 @@ The following code example creates a process that prints a file. It sets the [!NOTE] > Multiple Windows services can be loaded within the same instance of the Service Host process (svchost.exe). GetProcesses does not identify those individual services; for that, see . - - ## Examples The following example retrieves information of the current process, processes running on the local computer, all instances of Notepad running on the local computer, and a specific process on the local computer. It then retrieves information for the same processes on a remote computer. @@ -1665,7 +1663,6 @@ The following code example creates a process that prints a file. It sets the The parameter syntax is invalid. It might have length zero (0). The parameter is . The operating system platform does not support this operation on remote computers. - There are problems accessing the performance counter APIs used to get process information. This exception is specific to Windows NT, Windows 2000, and Windows XP. A problem occurred accessing an underlying system API. @@ -1770,7 +1767,6 @@ The following code example creates a process that prints a file. It sets the - There are problems accessing the performance counter APIs used to get process information. This exception is specific to Windows NT, Windows 2000, and Windows XP. @@ -1873,11 +1869,7 @@ The following code example creates a process that prints a file. It sets the The parameter syntax is invalid. It might have length zero (0). The parameter is . The operating system platform does not support this operation on remote computers. - The attempt to connect to has failed. - - -or- - -There are problems accessing the performance counter APIs used to get process information. This exception is specific to Windows NT, Windows 2000, and Windows XP. + The attempt to connect to has failed. A problem occurred accessing an underlying system API. @@ -4147,9 +4139,6 @@ If no main module is found, it could be because the process hasn't finished load ## Remarks The property holds an executable file name, such as Outlook, that does not include the .exe extension or the path. It is helpful for getting and manipulating all the processes that are associated with the same executable file. -> [!NOTE] -> On Windows 2000 operating systems, the property may be truncated to 15 characters if the process module information cannot be obtained. - You can call , passing it an executable file name, to retrieve an array that contains every running instance on the specified computer. You can use this array, for example, to shut down all the running instances of the executable file. ]]> @@ -4219,19 +4208,19 @@ If no main module is found, it could be because the process hasn't finished load ## Remarks The value returned by this property represents the most recently refreshed affinity of the process. To get the most up to date affinity, you need to call method first. - In Windows 2000 and later, a thread in a process can migrate from processor to processor, with each migration reloading the processor cache. Under heavy system loads, specifying which processor should run a specific thread can improve performance by reducing the number of times the processor cache is reloaded. The association between a processor and a thread is called the processor affinity. +A thread in a process can migrate from processor to processor, with each migration reloading the processor cache. Under heavy system loads, specifying which processor should run a specific thread can improve performance by reducing the number of times the processor cache is reloaded. The association between a processor and a thread is called the processor affinity. Each processor is represented as a bit. Bit 0 is processor one, bit 1 is processor two, and so forth. If you set a bit to the value 1, the corresponding processor is selected for thread assignment. When you set the value to zero, the operating system's scheduling algorithms set the thread's affinity. When the value is set to any nonzero value, the value is interpreted as a bitmask that specifies those processors eligible for selection. The following table shows a selection of values for an eight-processor system. -|Bitmask|Binary value|Eligible processors| -|-------------|------------------|-------------------------| -|0x0001|00000000 00000001|1| -|0x0003|00000000 00000011|1 and 2| -|0x0007|00000000 00000111|1, 2 and 3| -|0x0009|00000000 00001001|1 and 4| -|0x007F|00000000 01111111|1, 2, 3, 4, 5, 6 and 7| +| Bitmask | Binary value | Eligible processors | +|---------|-------------------|------------------------| +| 0x0001 | 00000000 00000001 | 1 | +| 0x0003 | 00000000 00000011 | 1 and 2 | +| 0x0007 | 00000000 00000111 | 1, 2 and 3 | +| 0x0009 | 00000000 00001001 | 1 and 4 | +| 0x007F | 00000000 01111111 | 1, 2, 3, 4, 5, 6 and 7 | ]]> diff --git a/xml/System.Diagnostics/ProcessStartInfo.xml b/xml/System.Diagnostics/ProcessStartInfo.xml index 6a92b2a8a62..4081d2a036f 100644 --- a/xml/System.Diagnostics/ProcessStartInfo.xml +++ b/xml/System.Diagnostics/ProcessStartInfo.xml @@ -975,9 +975,7 @@ If you use this property to set command-line arguments, diff --git a/xml/System.DirectoryServices.ActiveDirectory/ReplicationCursor.xml b/xml/System.DirectoryServices.ActiveDirectory/ReplicationCursor.xml index 48eb390a4a7..5c5be56104c 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/ReplicationCursor.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/ReplicationCursor.xml @@ -59,7 +59,6 @@ ]]> - This property is not supported on Windows 2000. diff --git a/xml/System.DirectoryServices.ActiveDirectory/TrustType.xml b/xml/System.DirectoryServices.ActiveDirectory/TrustType.xml index baeebad181c..eccf07bf76a 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/TrustType.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/TrustType.xml @@ -93,7 +93,7 @@ 4 - The trust relationship is between two forest root domains in separate Windows Server 2003 forests. + The trust relationship is between two forest root domains in separate Windows Server forests. diff --git a/xml/System.DirectoryServices.Protocols/LocatorFlags.xml b/xml/System.DirectoryServices.Protocols/LocatorFlags.xml index cf34f747592..18c15536ed7 100644 --- a/xml/System.DirectoryServices.Protocols/LocatorFlags.xml +++ b/xml/System.DirectoryServices.Protocols/LocatorFlags.xml @@ -71,7 +71,7 @@ 32 - Attempts to find a domain controller that supports directory service functions (Windows 2000 or later). The value is equal to 32 or 0x20. + Attempts to find a domain controller that supports directory service functions. The value is equal to 32 or 0x20. diff --git a/xml/System.DirectoryServices/AuthenticationTypes.xml b/xml/System.DirectoryServices/AuthenticationTypes.xml index 8bee8f632bb..e349b8fbc7d 100644 --- a/xml/System.DirectoryServices/AuthenticationTypes.xml +++ b/xml/System.DirectoryServices/AuthenticationTypes.xml @@ -27,22 +27,22 @@ The enumeration specifies the types of authentication used in . This enumeration has a attribute that allows a bitwise combination of its member values. - [!NOTE] -> None of these options are supported by the Novell Netware Directory Service (NDS) system provider. - +> None of these options are supported by the Novell Netware Directory Service (NDS) system provider. + ]]> diff --git a/xml/System.DirectoryServices/DirectorySearcher.xml b/xml/System.DirectoryServices/DirectorySearcher.xml index 390bee82ad6..6cd9e3825cb 100644 --- a/xml/System.DirectoryServices/DirectorySearcher.xml +++ b/xml/System.DirectoryServices/DirectorySearcher.xml @@ -1023,7 +1023,7 @@ SearchResultCollection res = src.FindAll(); System.Collections.Specialized.StringCollection - Gets a value indicating the list of properties to retrieve during the search. + Gets a list of properties to retrieve during the search. A object that contains the set of properties to retrieve during the search. The default is an empty , which retrieves all properties. @@ -1031,9 +1031,9 @@ SearchResultCollection res = src.FindAll(); diff --git a/xml/System.Drawing.Text/PrivateFontCollection.xml b/xml/System.Drawing.Text/PrivateFontCollection.xml index d353c306222..3832dabe7b5 100644 --- a/xml/System.Drawing.Text/PrivateFontCollection.xml +++ b/xml/System.Drawing.Text/PrivateFontCollection.xml @@ -123,7 +123,7 @@ is not supported on operating systems before Windows 2000. When using a private font on operating systems before Windows 2000, the default font, typically Microsoft Sans Serif, will be substituted. + Windows Forms applications support TrueType fonts and have limited support for OpenType fonts. If you try to use a font that is not supported, such as an unsupported OpenType font or a Bitmap font, an exception will occur. ]]> diff --git a/xml/System.Drawing/SystemFonts.xml b/xml/System.Drawing/SystemFonts.xml index 9364d11d574..8ac3c18e0de 100644 --- a/xml/System.Drawing/SystemFonts.xml +++ b/xml/System.Drawing/SystemFonts.xml @@ -185,8 +185,7 @@ property returns Tahoma, 8 point. Otherwise, returns the value of the property. The returned by does not change when the user is in High Contrast mode. For a font that changes when the user is in High Contrast mode use another system font such as . + returns the value of the property. The returned by does not change when the user is in High Contrast mode. For a font that changes when the user is in High Contrast mode, use another system font such as . ]]> diff --git a/xml/System.Management/ImpersonationLevel.xml b/xml/System.Management/ImpersonationLevel.xml index f529927e6b8..9a426090087 100644 --- a/xml/System.Management/ImpersonationLevel.xml +++ b/xml/System.Management/ImpersonationLevel.xml @@ -87,7 +87,7 @@ 4 - Delegate-level COM impersonation level that allows objects to permit other objects to use the credentials of the caller. This level, which will work with WMI calls but may constitute an unnecessary security risk, is supported only under Windows 2000. + Delegate-level COM impersonation level that allows objects to permit other objects to use the credentials of the caller. diff --git a/xml/System.Net.NetworkInformation/IPGlobalProperties.xml b/xml/System.Net.NetworkInformation/IPGlobalProperties.xml index 7300e7dd3cb..5a833775552 100644 --- a/xml/System.Net.NetworkInformation/IPGlobalProperties.xml +++ b/xml/System.Net.NetworkInformation/IPGlobalProperties.xml @@ -677,12 +677,8 @@ ## Remarks ICMP version 6 is a set of messages for use with Internet Protocol version 6 (IPv6). ICMP is used by IPv6 nodes to report errors encountered in processing data packets and to perform other Internet layer functions. ICMP version 6 is defined in IETF RFC 1885. - The IPv6 protocol is not supported for computers with Windows 2000 or earlier operating systems. - For details on the ICMP version 6 traffic statistics available to applications, see the class documentation. Note that the object returned by this method reflects the statistics as of the time the object is created. This information is not updated dynamically. - - ## Examples The following example displays the current ICMPv6 statistics. @@ -691,7 +687,7 @@ ]]> The Win32 function failed. - The local computer's operating system is not Windows XP or later. + The operating system is not Windows. @@ -887,12 +883,10 @@ class documentation. Note that the object returned by this method reflects the statistics as of the time the object is created. This information is not updated dynamically. - - ## Examples The following code example displays IP statistics for the local computer. diff --git a/xml/System.Net.NetworkInformation/MulticastIPAddressInformation.xml b/xml/System.Net.NetworkInformation/MulticastIPAddressInformation.xml index 01cdfab468d..c1d4e2e8f13 100644 --- a/xml/System.Net.NetworkInformation/MulticastIPAddressInformation.xml +++ b/xml/System.Net.NetworkInformation/MulticastIPAddressInformation.xml @@ -153,7 +153,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -209,7 +209,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -322,7 +322,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -378,7 +378,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -434,7 +434,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. diff --git a/xml/System.Net.NetworkInformation/NetworkInterface.xml b/xml/System.Net.NetworkInformation/NetworkInterface.xml index 7e6b316c530..1738300f24e 100644 --- a/xml/System.Net.NetworkInformation/NetworkInterface.xml +++ b/xml/System.Net.NetworkInformation/NetworkInterface.xml @@ -662,7 +662,7 @@ System.Boolean - Gets a value that indicates whether the network interface is set to only receive data packets. + Gets a value that indicates whether the network interface is set to only receive data packets. if the interface only receives network traffic; otherwise, . @@ -676,7 +676,6 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. @@ -1065,7 +1064,7 @@ System.Boolean - Gets a value that indicates whether the network interface is enabled to receive multicast packets. + Gets a value that indicates whether the network interface is enabled to receive multicast packets. if the interface receives multicast packets; otherwise, . @@ -1074,8 +1073,6 @@ ## Remarks Multicasting is the act of sending a data packet to multiple destinations simultaneously. - - ## Examples The following code example displays a summary for all interfaces on the local computer. @@ -1084,7 +1081,6 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. diff --git a/xml/System.Net.NetworkInformation/UnicastIPAddressInformation.xml b/xml/System.Net.NetworkInformation/UnicastIPAddressInformation.xml index d54561d8c14..94d4c9d62e0 100644 --- a/xml/System.Net.NetworkInformation/UnicastIPAddressInformation.xml +++ b/xml/System.Net.NetworkInformation/UnicastIPAddressInformation.xml @@ -159,7 +159,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -215,7 +215,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -328,7 +328,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -467,7 +467,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. @@ -523,7 +523,7 @@ ]]> - This property is not valid on computers running operating systems earlier than Windows XP. + The operating system is not Windows. diff --git a/xml/System.Net.Security/NegotiateStream.xml b/xml/System.Net.Security/NegotiateStream.xml index 77cd1023303..8606efcd320 100644 --- a/xml/System.Net.Security/NegotiateStream.xml +++ b/xml/System.Net.Security/NegotiateStream.xml @@ -1069,7 +1069,6 @@ The following example demonstrates calling this constructor. This code example i The authentication failed. You can use this object to retry the authentication. The authentication failed. You can use this object to retry the authentication. This object has been closed. - Windows 95 and Windows 98 are not supported. @@ -1137,7 +1136,6 @@ The following example demonstrates calling this constructor. This code example i The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. @@ -1209,7 +1207,6 @@ The following example demonstrates calling this constructor. This code example i -or- This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server. - Windows 95 and Windows 98 are not supported. @@ -1297,7 +1294,6 @@ The following example demonstrates calling this constructor. This code example i The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. @@ -1366,7 +1362,6 @@ The following example demonstrates calling this constructor. This code example i The authentication failed. You can use this object to retry the authentication. The authentication failed. You can use this object to retry the authentication. This object has been closed. - Windows 95 and Windows 98 are not supported. @@ -1442,7 +1437,6 @@ The following example demonstrates calling this constructor. This code example i The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. @@ -1515,7 +1509,6 @@ The following example demonstrates calling this constructor. This code example i -or- This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server. - Windows 95 and Windows 98 are not supported. @@ -1604,7 +1597,6 @@ The following example demonstrates calling this constructor. This code example i The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. @@ -2191,7 +2183,6 @@ The following example demonstrates calling this method to begin an asynchronous The authentication failed. You can use this object to retry the authentication. The authentication failed. You can use this object to retry the authentication. This object has been closed. - Windows 95 and Windows 98 are not supported. @@ -2270,7 +2261,6 @@ The following example demonstrates calling this method to begin an asynchronous The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. @@ -2364,7 +2354,6 @@ The following example demonstrates calling this method to begin an asynchronous -or- This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server. - Windows 95 and Windows 98 are not supported. @@ -2465,7 +2454,6 @@ The following example demonstrates calling this method to begin an asynchronous The parameter was set to on a platform that does not support extended protection. Integrated Windows Authentication with Extended Protection - Windows 95 and Windows 98 are not supported. diff --git a/xml/System.Net.Security/SslStream.xml b/xml/System.Net.Security/SslStream.xml index 60ba5de187a..112288fd375 100644 --- a/xml/System.Net.Security/SslStream.xml +++ b/xml/System.Net.Security/SslStream.xml @@ -1186,7 +1186,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -1255,7 +1254,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -1325,7 +1323,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -1402,7 +1399,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -1484,7 +1480,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -2186,7 +2181,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -2280,7 +2274,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -2381,7 +2374,6 @@ Use the overloads for methods that authenticate SslStreams that don't specify a Authentication is already in progress. This object has been closed. - The method is not supported on Windows 95, Windows 98, or Windows Millennium. @@ -2937,11 +2929,8 @@ Use the overloads for methods that authenticate SslStreams that don't specify a is required for the property when the enumeration value is used to construct a instance. - - Windows Server 2003 and Windows XP do not support the value. So even if the value is used to construct the instance, the property will be . The value is only returned on Windows Vista and later. - +A value of is required for the property when the enumeration value is used to construct a instance. ## Examples The following code example displays the cryptography settings for the specified stream. diff --git a/xml/System.Net.Sockets/IOControlCode.xml b/xml/System.Net.Sockets/IOControlCode.xml index 5020db57d48..04d49517687 100644 --- a/xml/System.Net.Sockets/IOControlCode.xml +++ b/xml/System.Net.Sockets/IOControlCode.xml @@ -290,7 +290,7 @@ The enumeration provides named values fo 3355443225 - Sort the structure returned by the field and add scope ID information for IPv6 addresses. This control code is supported on Windows XP and later operating systems. This value is equal to the Winsock 2 SIO_ADDRESS_LIST_SORT constant. + Sort the structure returned by the field and add scope ID information for IPv6 addresses. This value is equal to the Winsock 2 `SIO_ADDRESS_LIST_SORT` constant. @@ -1083,7 +1083,7 @@ The enumeration provides named values fo 2281701401 - Control whether the socket receives notification when a namespace query becomes invalid. This control code is supported on Windows XP and later operating systems. This value is equal to the Winsock 2 SIO_NSP_NOTIFY_CHANGE constant. + Control whether the socket receives notification when a namespace query becomes invalid. This value is equal to the Winsock 2 `SIO_NSP_NOTIFY_CHANGE` constant. diff --git a/xml/System.Net.Sockets/IPProtectionLevel.xml b/xml/System.Net.Sockets/IPProtectionLevel.xml index 54cd8866ffe..60f190b553e 100644 --- a/xml/System.Net.Sockets/IPProtectionLevel.xml +++ b/xml/System.Net.Sockets/IPProtectionLevel.xml @@ -94,7 +94,7 @@ 20 - The IP protection level is edge restricted. This value would be used by applications designed to operate across the Internet. This setting does not allow Network Address Translation (NAT) traversal using the Windows Teredo implementation. These applications may bypass IPv4 firewalls, so applications must be hardened against Internet attacks directed at the opened port. On Windows Server 2003 and Windows XP, the default value for the IP Protection level on a socket is edge restricted. + The IP protection level is edge restricted. This value would be used by applications designed to operate across the Internet. This setting does not allow Network Address Translation (NAT) traversal using the Windows Teredo implementation. These applications might bypass IPv4 firewalls, so applications must be hardened against Internet attacks directed at the opened port. diff --git a/xml/System.Net.Sockets/Socket.xml b/xml/System.Net.Sockets/Socket.xml index 822714bb200..db2dd982798 100644 --- a/xml/System.Net.Sockets/Socket.xml +++ b/xml/System.Net.Sockets/Socket.xml @@ -6133,7 +6133,7 @@ Duplication of the socket reference failed. Gets or sets a value that indicates whether the allows only one process to bind to a port. - if the allows only one socket to bind to a specific port; otherwise, . The default is for Windows Server 2003 and Windows XP and newer versions. + if the allows only one socket to bind to a specific port; otherwise, . The default is . enumeration defines the socket option levels that can be passed to the and methods. enumerated values are grouped by . - **Note** To use IPv6 on Windows XP, install Advance Networking Pack for Windows XP. - - - ## Examples The following example uses this enumeration to set socket options. diff --git a/xml/System.Net.Sockets/TcpClient.xml b/xml/System.Net.Sockets/TcpClient.xml index 95caa9f7e7e..dc6098b8e33 100644 --- a/xml/System.Net.Sockets/TcpClient.xml +++ b/xml/System.Net.Sockets/TcpClient.xml @@ -1961,7 +1961,7 @@ The `Available` property is a way to determine whether data is queued for readin Gets or sets a value that specifies whether the allows only one client to use a port. - if the allows only one client to use a specific port; otherwise, . The default is for Windows Server 2003 and Windows XP Service Pack 2 and later, and for all other versions. + if the allows only one client to use a specific port; otherwise, . The default is . , , , or , the client port is bound as a side effect of the method, and you cannot subsequently set the `ExclusiveAddressUse` property. - - ## Examples The following code example creates a and gets and sets the value of the `ExclusiveAddressUse` property. diff --git a/xml/System.Net.Sockets/TcpListener.xml b/xml/System.Net.Sockets/TcpListener.xml index 552ffca141f..bf0f9b0aedf 100644 --- a/xml/System.Net.Sockets/TcpListener.xml +++ b/xml/System.Net.Sockets/TcpListener.xml @@ -1167,7 +1167,7 @@ Gets or sets a value that specifies whether the allows only one underlying socket to listen to a specific port. - if the allows only one to listen to a specific port; otherwise, . The default is for Windows Server 2003 and Windows XP Service Pack 2 and later, and for all other versions. + if the allows only one to listen to a specific port; otherwise, . The default is . , or call the method and then set this property. - - ## Examples The following code example gets and sets the property. diff --git a/xml/System.Net.Sockets/UdpClient.xml b/xml/System.Net.Sockets/UdpClient.xml index 3fd8b96ecbb..48c97f9b746 100644 --- a/xml/System.Net.Sockets/UdpClient.xml +++ b/xml/System.Net.Sockets/UdpClient.xml @@ -1945,7 +1945,7 @@ Gets or sets a value that specifies whether the allows only one client to use a port. - if the allows only one client to use a specific port; otherwise, . The default is for Windows Server 2003 and Windows XP Service Pack 2 and later, and for all other versions. + if the allows only one client to use a specific port; otherwise, . The default is . , , , or , the client port is bound as a side effect of the constructor, and you cannot subsequently set the property - - ## Examples The following code example creates a , and gets and sets the property. diff --git a/xml/System.Net/HttpListener.xml b/xml/System.Net/HttpListener.xml index 0473239cec4..d14e57c6a46 100644 --- a/xml/System.Net/HttpListener.xml +++ b/xml/System.Net/HttpListener.xml @@ -163,10 +163,8 @@ Starting in .NET 11, the Windows `HTTP.sys` implementation of - This class cannot be used on the current operating system. Windows Server 2003 or Windows XP SP2 is required to use instances of this class. - - Note: This member outputs trace information when you enable network tracing in your application. - + The operating system is not supported. + This member outputs trace information when you enable network tracing in your application. diff --git a/xml/System.Printing/PrintSystemJobInfo.xml b/xml/System.Printing/PrintSystemJobInfo.xml index 68566622159..ccd206cc015 100644 --- a/xml/System.Printing/PrintSystemJobInfo.xml +++ b/xml/System.Printing/PrintSystemJobInfo.xml @@ -866,14 +866,11 @@ attribute, to a dynamic assembly. The example saves the assembly to disk, and the attribute value can be viewed by using the **Windows File Properties** dialog box. @@ -125,7 +123,8 @@ @@ -177,7 +176,8 @@ property appears on the **Details** tab of the **Windows File Properties** dialog box for the assembly. The property name is **File description**. In Windows XP, this property appears on the **Version** tab of the **Windows File Properties** dialog box. + +On Windows, the value of the property appears on the **Details** tab of the **Windows File Properties** dialog box for the assembly. ]]> diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml index 489a6a2e833..3667091337c 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml @@ -4420,9 +4420,7 @@ Unlike object. - Note that the default chaining engine can be overridden using the class. On Microsoft Windows Server 2003, the default engine conforms to the specification described in RFC3280, "[Certificate and Certificate Revocation List (CRL) Profile](https://www.ietf.org/rfc/)." - - +The default chaining engine can be overridden using the class. ## Examples The following code example opens the current user certificate store, selects only active certificates, then allows the user to select one or more certificates. The example then writes certificate information to the console. diff --git a/xml/System.Security.Cryptography.X509Certificates/X509ChainElement.xml b/xml/System.Security.Cryptography.X509Certificates/X509ChainElement.xml index 3474980dc32..5727aa417e7 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509ChainElement.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509ChainElement.xml @@ -231,16 +231,12 @@ diff --git a/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml b/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml index 638d4d8133b..3ecbdcc0f1e 100644 --- a/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml +++ b/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml @@ -821,7 +821,7 @@ If no key is loaded via the The data to be encrypted. - to perform direct encryption using OAEP padding (only available on a computer running Windows XP or later); otherwise, to use PKCS#1 v1.5 padding. + to perform direct encryption using OAEP padding; to use PKCS#1 v1.5 padding. Encrypts data with the algorithm. The encrypted data. @@ -837,8 +837,6 @@ If no key is loaded via the to decrypt the results of this method. - - ## Examples The following code example initializes an object to the value of a public key (sent by another party), generates a session key using the algorithm, and then encrypts the session key using the object. Using this scheme, the session key could be sent back to the owner of the private RSA key and the two parties could use the session key to exchange encrypted data. diff --git a/xml/System.Security.Principal/WindowsBuiltInRole.xml b/xml/System.Security.Principal/WindowsBuiltInRole.xml index c2210267a65..63db3ee0f6a 100644 --- a/xml/System.Security.Principal/WindowsBuiltInRole.xml +++ b/xml/System.Security.Principal/WindowsBuiltInRole.xml @@ -33,12 +33,11 @@ [!NOTE] -> In Windows Vista, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. The code that executes the method does not display the Consent dialog box. The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator. +These roles represent the local Windows groups. +> [!NOTE] +> In Windows Vista, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. The code that executes the method does not display the Consent dialog box. The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator. ## Examples The following example shows the use of the enumeration. diff --git a/xml/System.Security.Principal/WindowsIdentity.xml b/xml/System.Security.Principal/WindowsIdentity.xml index e4f7205b065..d5564066ff5 100644 --- a/xml/System.Security.Principal/WindowsIdentity.xml +++ b/xml/System.Security.Principal/WindowsIdentity.xml @@ -215,7 +215,7 @@ A UPN has the format *username*@*domainname*.com, in other words, an email address. The UPN identified in `sUserPrincipalName` is used to retrieve a token for that user through the Windows API `LsaLogonUser` function. In turn that token is used to identify the user. An exception might be returned due to the inability to log on using the supplied UPN. > [!NOTE] -> This constructor is intended for use only on computers joined to Windows Server 2003 or later domains. An exception is thrown for earlier domain types. This restriction is due to the fact that this constructor uses the [KERB_S4U_LOGON structure](https://learn.microsoft.com/windows/win32/api/ntsecapi/ns-ntsecapi-kerb_s4u_logon), which was first introduced in Windows Server 2003. Also, this constructor requires read access to the [token-groups-global-and-universal (TGGAU) attribute](https://support.microsoft.com/en-us/help/331951/some-applications-and-apis-require-access-to-authorization-information) on the target user account. +> This constructor requires read access to the [token-groups-global-and-universal (TGGAU) attribute](https://learn.microsoft.com/troubleshoot/windows-server/active-directory/apps-apis-require-access) on the target user account. ]]> diff --git a/xml/System/DateTime.xml b/xml/System/DateTime.xml index 61eba18e353..3c25710c435 100644 --- a/xml/System/DateTime.xml +++ b/xml/System/DateTime.xml @@ -3820,7 +3820,7 @@ The return value is a whose p ## Remarks > [!IMPORTANT] -> You should not assume that multiple calls to the overloads will return identical data. Depending on the specific overload, the data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. +> You should not assume that multiple calls to the overloads will return identical data. Depending on the specific overload, the data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. ]]> @@ -3877,7 +3877,7 @@ The return value is a whose p Each element of the return value is formatted using information from the current culture. For more information about culture-specific formatting information for the current culture, see . > [!IMPORTANT] -> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data. The data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. +> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data. The data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. @@ -4084,7 +4084,7 @@ July, 2009 Each element of the return value is formatted using information from the current culture. For more information about culture-specific formatting information for the current culture, see . > [!IMPORTANT] -> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data. The data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. +> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data. The data returned by this method can change if the current culture changes, the user overrides individual cultural settings, or an update occurs to the system's cultural data. @@ -4163,7 +4163,7 @@ July, 2009 Each element of the return value is formatted using culture-specific information supplied by `provider`. > [!IMPORTANT] -> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data unless `provider` is a object that represents the invariant culture. The data returned by this method can change if the user overrides the individual cultural settings of `provider` or if an update occurs to the system's cultural data for `provider`. +> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data unless `provider` is a object that represents the invariant culture. The data returned by this method can change if the user overrides the individual cultural settings of `provider` or if an update occurs to the system's cultural data for `provider`. @@ -4349,7 +4349,7 @@ juillet 2009 Each element of the return value is formatted using culture-specific information supplied by `provider`. > [!IMPORTANT] -> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data unless `provider` is a object that represents the invariant culture. The data returned by this method can change if the user overrides the individual cultural settings of `provider` or if an update occurs to the system's cultural data for `provider`. +> Because this method uses culture-sensitive data, you should not assume that multiple calls to the method will return identical data unless `provider` is a object that represents the invariant culture. The data returned by this method can change if the user overrides the individual cultural settings of `provider` or if an update occurs to the system's cultural data for `provider`. @@ -4572,8 +4572,6 @@ juillet 2009 If the current value represents either an ambiguous or an invalid time in the local time zone, the method returns `false`. - On Windows XP systems, the method recognizes only the current adjustment rule when determining whether the current instance is a daylight saving time. As a result, the method may not accurately report whether the current instance is a daylight saving time for periods before the current adjustment rule came into effect. - ]]> @@ -5131,7 +5129,7 @@ juillet 2009 The return value is a whose property returns . > [!NOTE] -> You can also use the property to retrieve the current local date and time. It allows a local time to be expressed unambiguously as a single point in time, which in turn makes that time value portable across computers. +> You can also use the property to retrieve the current local date and time. It allows a local time to be expressed unambiguously as a single point in time, which in turn makes that time value portable across computers. @@ -5641,7 +5639,7 @@ The return value is a whose p The method does not consider the value of the property of the two values when performing the subtraction. Before subtracting objects, ensure that the objects represent times in the same time zone. Otherwise, the result will include the difference between time zones. > [!NOTE] -> The method does consider the difference between time zones when performing the subtraction. +> The method does consider the difference between time zones when performing the subtraction. The equivalent method for this operator is @@ -5768,7 +5766,7 @@ The return value is a whose p The method tries to convert the string representation of a date and time value to its equivalent. It tries to parse the input string completely without throwing a exception. When using overloads that accept an object, it will be used to parse `StringToParse`. If no such object is provided, will be used instead. > [!IMPORTANT] -> If the parsing operation fails because of an unrecognized string format, the method throws a , whereas the method returns `false`. Because exception handling can be expensive, you should use when the parsing operation is expected to succeed because the input source is trusted. is preferable when parsing failures are likely, particularly because an input source is not trusted, or you have reasonable default values to substitute for strings that do not parse successfully. +> If the parsing operation fails because of an unrecognized string format, the method throws a , whereas the method returns `false`. Because exception handling can be expensive, you should use when the parsing operation is expected to succeed because the input source is trusted. is preferable when parsing failures are likely, particularly because an input source is not trusted, or you have reasonable default values to substitute for strings that do not parse successfully. The string to be parsed can take any of the following forms: @@ -5825,15 +5823,15 @@ The following example parses strings in each of these formats by using the forma If you parse a date and time string by using a object with customized settings that are different from those of a standard culture, use the method instead of the method to improve the chances for a successful conversion. A non-standard date and time string can be complicated and difficult to parse. The method tries to parse a string with several implicit parse patterns, all of which might fail. In contrast, the method requires you to explicitly designate one or more exact parse patterns that are likely to succeed. For more information, see the "DateTimeFormatInfo and Dynamic Data" section in the topic. > [!IMPORTANT] -> Note that the formatting conventions for a particular culture are dynamic and can be subject to change. This means that parsing operations that depend on the formatting conventions of the default (current) culture or that specify an object that represents a culture other than the invariant culture can unexpectedly fail if any of the following occurs: +> Note that the formatting conventions for a particular culture are dynamic and can be subject to change. This means that parsing operations that depend on the formatting conventions of the default (current) culture or that specify an object that represents a culture other than the invariant culture can unexpectedly fail if any of the following occurs: > > - The culture-specific data has changed between major or minor versions of .NET or as the result of an update to the existing version of .NET. > - The culture-specific data reflects user preferences, which can vary from machine to machine or session to session. > - The culture-specific data represents a replacement culture that overrides the settings of a standard culture or a custom culture. > -> To prevent the difficulties in parsing data and time strings that are associated with changes in cultural data, you can parse date and time strings by using the invariant culture, or you can call the or method and specify the exact format of the string to be parsed. If you are serializing and deserializing date and time data, you can either use the formatting conventions of the invariant culture, or you can serialize and deserialize the value in a binary format. +> To prevent the difficulties in parsing data and time strings that are associated with changes in cultural data, you can parse date and time strings by using the invariant culture, or you can call the or method and specify the exact format of the string to be parsed. If you are serializing and deserializing date and time data, you can either use the formatting conventions of the invariant culture, or you can serialize and deserialize the value in a binary format. > -> For more information see the "Dynamic culture data" section in the topic and the "Persisting DateTime values" section in the topic. +> For more information see the "Dynamic culture data" section in the topic and the "Persisting DateTime values" section in the topic. ### Parsing and style elements All overloads ignore leading, inner, or trailing white-space characters in the input string (which is represented by `s` in the following table). The date and time can be bracketed with a pair of leading and trailing NUMBER SIGN characters ("#", U+0023), and can be trailed with one or more NULL characters (U+0000). @@ -6351,7 +6349,7 @@ The following example demonstrates the [!NOTE] -> If `format` is a custom format pattern that does not include date or time separators (such as "yyyyMMddHHmm"), use the invariant culture for the `provider` parameter and the widest form of each custom format specifier. For example, if you want to specify hours in the format pattern, specify the wider form, "HH", instead of the narrower form, "H". +> If `format` is a custom format pattern that does not include date or time separators (such as "yyyyMMddHHmm"), use the invariant culture for the `provider` parameter and the widest form of each custom format specifier. For example, if you want to specify hours in the format pattern, specify the wider form, "HH", instead of the narrower form, "H". The particular date and time symbols and strings (such as names of the days of the week in a particular language) used in `s` are defined by the `provider` parameter, as is the precise format of `s` if `format` is a standard format specifier string. The `provider` parameter can be any of the following: @@ -6592,7 +6590,7 @@ The following example demonstrates the [!NOTE] -> Rather than requiring that `s` conform to a single format for the parse operation to succeed, you can call the method and specify multiple permitted formats. This makes the parse operation more likely to succeed. +> Rather than requiring that `s` conform to a single format for the parse operation to succeed, you can call the method and specify multiple permitted formats. This makes the parse operation more likely to succeed. The `styles` parameter includes one or more members of the enumeration that determine whether and where white space not defined by `format` can appear in `s` and that control the precise behavior of the parse operation. The following table describes how each member of the enumeration affects the operation of the method. @@ -6899,7 +6897,7 @@ The following example demonstrates the object consists of a Kind field that indicates whether the time value is based on local time, Coordinated Universal Time (UTC), or neither, and a Ticks field that contains a time value measured in 100-nanosecond ticks. The method creates a new object using the specified `kind` parameter and the original time value. > [!IMPORTANT] -> The returned value does not represent the same instant in time as the `value` parameter, and is not a time zone conversion method. Instead, it leaves the time specified by the `value` parameter unchanged, and sets the property to `kind`. For information about time zone conversions, see [Converting Times Between Time Zones](/dotnet/standard/datetime/converting-between-time-zones). +> The returned value does not represent the same instant in time as the `value` parameter, and is not a time zone conversion method. Instead, it leaves the time specified by the `value` parameter unchanged, and sets the property to `kind`. For information about time zone conversions, see [Converting Times Between Time Zones](/dotnet/standard/datetime/converting-between-time-zones). The method is useful in interoperability scenarios where you receive a object with an unspecified Kind field, but you can determine by independent means that the Ticks field represents local time or UTC. @@ -6982,7 +6980,7 @@ The following example demonstrates the method does not consider the value of the property of the two values when performing the subtraction. Before subtracting objects, ensure that the objects represent times in the same time zone. Otherwise, the result will include the difference between time zones. > [!NOTE] -> The method does consider the difference between time zones when performing the subtraction. +> The method does consider the difference between time zones when performing the subtraction. @@ -8453,24 +8451,19 @@ The return value is a whose p ## Remarks The local time is equal to the Coordinated Universal Time (UTC) time plus the UTC offset. For more information about the UTC offset, see . The conversion also takes into account the daylight saving time rule that applies to the time represented by the current object. -> [!IMPORTANT] -> On Windows XP systems, the method recognizes only the current adjustment rule when converting from UTC to local time. As a result, conversions for periods before the current adjustment rule came into effect may not accurately reflect the difference between UTC and local time. - The value returned by the method is determined by the property of the current object. The following table describes the possible results. -|Kind|Results| -|----------|-------------| -||This instance of is converted to local time.| -||No conversion is performed.| -||This instance of is assumed to be a UTC time, and the conversion is performed as if were .| +| Kind | Results | +|----------------------------------|---------------------------------------------------------------------| +| | This instance of is converted to local time. | +| | No conversion is performed. | +| | This instance of is assumed to be a UTC time, and the conversion is performed as if were . | > [!NOTE] -> The method converts a value from UTC to local time. To convert the time in any designated time zone to local time, use the method. +> The method converts a value from UTC to local time. To convert the time in any designated time zone to local time, use the method. The value returned by the conversion is a whose property always returns . Consequently, a valid result is returned even if is applied repeatedly to the same . - - ## Examples The following example demonstrates the method. Note that the exact output depends on the current culture and the local time zone of the system on which it is run. @@ -8548,7 +8541,7 @@ The value returned by the method is determin The value of the current object is formatted using the pattern defined by the property associated with the current culture. The return value is identical to the value returned by specifying the "D" [standard DateTime format string](/dotnet/standard/base-types/standard-date-and-time-format-strings) with the method. > [!NOTE] -> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard long date pattern is commonly "dddd, MMMM dd, yyyy"; for the de-DE culture, it is "dddd, d. MMMM yyyy"; for the ja-JP culture, it is "yyyy'年'M'月'd'日'". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. +> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard long date pattern is commonly "dddd, MMMM dd, yyyy"; for the de-DE culture, it is "dddd, d. MMMM yyyy"; for the ja-JP culture, it is "yyyy'年'M'月'd'日'". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. [!INCLUDE[culture-sensitive formatting](~/includes/thread-formatting.md)] @@ -8618,7 +8611,7 @@ The following example demonstrates the The value of the current object is formatted using the pattern defined by the property associated with the current culture. The return value is identical to the value returned by specifying the "T" [standard date and time format string](/dotnet/standard/base-types/standard-date-and-time-format-strings) with the method. > [!NOTE] -> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard long time pattern is "h:mm:ss tt"; for the de-DE culture, it is "HH:mm:ss"; for the ja-JP culture, it is "H:mm:ss". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. +> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard long time pattern is "h:mm:ss tt"; for the de-DE culture, it is "HH:mm:ss"; for the ja-JP culture, it is "H:mm:ss". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. [!INCLUDE[culture-sensitive-formatting](~/includes/thread-formatting.md)] @@ -8745,7 +8738,7 @@ The value of the current object is formatted using the pa The value of the current object is formatted using the pattern defined by the property associated with the current culture. The return value is identical to the value returned by specifying the "d" [standard DateTime format string](/dotnet/standard/base-types/standard-date-and-time-format-strings) with the method. > [!NOTE] -> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard short date pattern is "M/d/yyyy"; for the de-DE culture, it is "dd.MM.yyyy"; for the ja-JP culture, it is "yyyy/MM/dd". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. +> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard short date pattern is "M/d/yyyy"; for the de-DE culture, it is "dd.MM.yyyy"; for the ja-JP culture, it is "yyyy/MM/dd". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. [!INCLUDE[culture-sensitive formatting](~/includes/thread-formatting.md)] @@ -8814,7 +8807,7 @@ The value of the current object is formatted using the pa The value of the current object is formatted using the pattern defined by the property associated with the current culture. The return value is identical to the value returned by specifying the "t" [standard DateTime format string](/dotnet/standard/base-types/standard-date-and-time-format-strings) with the method. > [!NOTE] -> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard short time pattern is "h:mm tt"; for the de-DE culture, it is "HH:mm"; for the ja-JP culture, it is "H:mm". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. +> The string returned by the method is culture-sensitive. It reflects the pattern defined by the current culture's property. For example, for the en-US culture, the standard short time pattern is "h:mm tt"; for the de-DE culture, it is "HH:mm"; for the ja-JP culture, it is "H:mm". Note that its value can vary depending on the .NET implementation and its version, the operating system and its version, and user customization. [!INCLUDE[culture-sensitive formatting](~/includes/thread-formatting.md)] @@ -9295,24 +9288,19 @@ The following example illustrates how the string representation of a . The conversion also takes into account the daylight saving time rule that applies to the time represented by the current object. -> [!IMPORTANT] -> On Windows XP systems, the method recognizes only the current adjustment rule when converting from local time to UTC. As a result, conversions for periods before the current adjustment rule came into effect may not accurately reflect the difference between local time and UTC. - The value returned by the method is determined by the property of the current object. The following table describes the possible results. -|Kind|Results| -|----------|-------------| -||No conversion is performed.| -||The current object is converted to UTC.| -||The current object is assumed to be a local time, and the conversion is performed as if were .| +| Kind | Results | +|----------------------------------------|----------------------------------------------------------------| +| | No conversion is performed. | +| | The current object is converted to UTC. | +| | The current object is assumed to be a local time, and the conversion is performed as if were . | > [!NOTE] -> The method converts a value from local time to UTC. To convert the time in a non-local time zone to UTC, use the method. To convert a time whose offset from UTC is known, use the method. +> The method converts a value from local time to UTC. To convert the time in a non-local time zone to UTC, use the method. To convert a time whose offset from UTC is known, use the method. If the date and time instance value is an ambiguous time, this method assumes that it is a standard time. (An ambiguous time is one that can map either to a standard time or to a daylight saving time in the local time zone) If the date and time instance value is an invalid time, this method simply subtracts the local time from the local time zone's UTC offset to return UTC. (An invalid time is one that does not exist because of the application of daylight saving time adjustment rules.) - - ## Examples The following example demonstrates the method. @@ -9329,15 +9317,7 @@ The value returned by the method is dete ]]> - The method is sometimes used to convert a local time to UTC. The method is then called to restore the original local time. However, if the original time represents an invalid time in the local time zone, the two local time values will not be equal. For additional information and an example, see the method. - - On Windows XP systems, the method recognizes only the current adjustment rule for the local time zone, which it applies to all dates, including down-level dates (that is, dates that are earlier than the starting date of the current adjustment rule). Applications running on Windows XP that require historically accurate local date and time calculations must work around this behavior by using the method to retrieve a object that corresponds to the local time zone and calling its method. - - The following example illustrates the difference between the and methods on a Windows XP system in the U.S. Pacific Time zone. The first two method calls apply the current time zone adjustment rule (which went into effect in 2007) to a date in 2006. The current adjustment rule provides for the transition to daylight saving time on the second Sunday of March; the previous rule, which was in effect in 2006, provided for the transition to daylight saving time to occur on the first Sunday of April. Only the third method call accurately performs this historical date and time conversion. - - :::code language="csharp" source="~/snippets/csharp/System/DateTime/ToUniversalTime/touniversaltime.cs" id="Snippet1"::: - :::code language="fsharp" source="~/snippets/fsharp/VS_Snippets_CLR_System/system.datetime.touniversaltime/fs/touniversaltime.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/System/DateTime/ToUniversalTime/touniversaltime.vb" id="Snippet1"::: + The method is sometimes used to convert a local time to UTC. The method is then called to restore the original local time. However, if the original time represents an invalid time in the local time zone, the two local time values will not be equal. For additional information and an example, see the method. @@ -10138,7 +10118,7 @@ The following example illustrates the [!NOTE] -> Rather than requiring that `s` conform to a single format for the parse operation to succeed, you can call the method and specify multiple permitted formats. This makes the parse operation more likely to succeed. +> Rather than requiring that `s` conform to a single format for the parse operation to succeed, you can call the method and specify multiple permitted formats. This makes the parse operation more likely to succeed. The particular date and time symbols and strings (such as the names of the days of the week in a particular language) used in `s` are defined by the `provider` parameter, as is the precise format of `s` if `format` is a standard format specifier string. The `provider` parameter can be any of the following: diff --git a/xml/System/TimeZoneInfo+AdjustmentRule.xml b/xml/System/TimeZoneInfo+AdjustmentRule.xml index bd176fa2fac..0b7bb3f9ffe 100644 --- a/xml/System/TimeZoneInfo+AdjustmentRule.xml +++ b/xml/System/TimeZoneInfo+AdjustmentRule.xml @@ -374,15 +374,12 @@ dateVariable.Date > [!IMPORTANT] > Unless there is a compelling reason to do otherwise, you should define the adjustment rule's end date to occur within the time interval during which the time zone observes standard time. Unless there is a compelling reason to do so, you should not define the adjustment rule's end date to occur within the time interval during which the time zone observes daylight saving time. For example, if a time zone's transition from daylight saving time occurs on the third Sunday of March and its transition to daylight saving time occurs on the first Sunday of October, the effective end date of the adjustment rule should not be December 31 of a particular year, since that date occurs within the period of daylight saving time. - By default, the registry in Windows XP defines a single adjustment rule whose end date is Friday, December 31, 9999 (the value of `DateTime.MaxValue.Date`), for each time zone. For time zones in the United States, the registry in Windows Vista defines two adjustment rules: +For time zones in the United States, the registry in Windows defines two adjustment rules: - Monday, January 01, 0001, to Sunday, December 31, 2006. - - Monday, January 01, 2007, to Friday, December 31, 9999. - This means that, although time zone adjustment rules stored in the registry are useful for performing current time zone-related operations, they cannot be reliably used for retrieving historical time zone information. For information about defining a custom time zone with multiple adjustment rules that can be used in a historical time zone-aware application, see [How to: Create Time Zones with Adjustment Rules](/dotnet/standard/datetime/create-time-zones-with-adjustment-rules). - - +Although time zone adjustment rules stored in the registry are useful for performing current time zone-related operations, they cannot be reliably used for retrieving historical time zone information. For information about defining a custom time zone with multiple adjustment rules that can be used in a historical time zone-aware application, see [How to: Create Time Zones with Adjustment Rules](/dotnet/standard/datetime/create-time-zones-with-adjustment-rules). ## Examples The following example displays information about all of the time zones defined in the local computer's system registry, including the starting and ending dates of their adjustment rules. @@ -447,15 +444,12 @@ dateVariable.Date > [!IMPORTANT] > Unless there is a compelling reason to do otherwise, you should define the adjustment rule's start date to occur within the time interval during which the time zone observes standard time. Unless there is a compelling reason to do so, you should not define the adjustment rule's start date to occur within the time interval during which the time zone observes daylight saving time. For example, if a time zone's transition from daylight saving time occurs on the third Sunday of March and its transition to daylight saving time occurs on the first Sunday of October, the effective start date of the adjustment rule should not be January 1 of a particular year, since that date occurs within the period of daylight saving time. - By default, the registry in Windows XP defines a single adjustment rule whose start date is Monday, January 01, 0001 (the value of `DateTime.MinValue.Date`), for each time zone. For time zones in the United States, the registry in Windows Vista defines two adjustment rules: +For time zones in the United States, the registry in Windows defines two adjustment rules: - Monday, January 01, 0001, to Sunday, December 31, 2006. - - Monday, January 01, 2007, to Friday, December 31, 9999. - This means that, although time zone adjustment rules stored in the registry are useful for performing current time zone-related operations, they cannot be reliably used for retrieving historical time zone information. For information about defining a custom time zone with multiple adjustment rules that can be used in a historical time zone-aware application, see [How to: Create Time Zones with Adjustment Rules](/dotnet/standard/datetime/create-time-zones-with-adjustment-rules). - - +Although time zone adjustment rules stored in the registry are useful for performing current time zone-related operations, they cannot be reliably used for retrieving historical time zone information. For information about defining a custom time zone with multiple adjustment rules that can be used in a historical time zone-aware application, see [How to: Create Time Zones with Adjustment Rules](/dotnet/standard/datetime/create-time-zones-with-adjustment-rules). ## Examples The following example displays information about all of the time zones defined in the local computer's system registry, including the starting and ending dates of their adjustment rules. diff --git a/xml/System/TimeZoneNotFoundException.xml b/xml/System/TimeZoneNotFoundException.xml index 93ece6c348f..da79165db31 100644 --- a/xml/System/TimeZoneNotFoundException.xml +++ b/xml/System/TimeZoneNotFoundException.xml @@ -59,15 +59,14 @@ ## Remarks This exception is thrown by the and methods when a time zone identifier cannot be found on the local system, or when there is no data associated with a particular time zone identifier. - Because the registry serves as the repository of time zone information in Windows XP and Windows Vista, this exception indicates that the registry contains no information about a particular time zone. Time zone information is stored in the subkeys of HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones. + Because the registry serves as the repository of time zone information in Windows, this exception indicates that the registry contains no information about a particular time zone. Time zone information is stored in the subkeys of `HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones`. If an application depends on the presence of a particular time zone and the attempt to retrieve it throws a , the application can handle the exception in either of two ways: - By calling the method to deserialize a saved object. - - By calling one of the overloads of the method to create a time zone. - See the examples for the and methods. + See the examples for the and methods. ]]>