| 1234567891011121314151617181920212223242526272829 |
- // Licensed to the .NET Foundation under one or more agreements.
- // The .NET Foundation licenses this file to you under the MIT license.
- // See the LICENSE file in the project root for more information.
- namespace System
- {
- partial struct Guid
- {
- public static Guid NewGuid()
- {
- // CoCreateGuid should never return Guid.Empty, since it attempts to maintain some
- // uniqueness guarantees.
- Guid g;
- int hr = Interop.Ole32.CoCreateGuid(out g);
- // We don't expect that this will ever throw an error, none are even documented, and so we don't want to pull
- // in the HR to ComException mappings into the core library just for this so we will try a generic exception if
- // we ever hit this condition.
- if (hr != 0)
- {
- Exception ex = new Exception();
- ex.HResult = hr;
- throw ex;
- }
- return g;
- }
- }
- }
|