Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Sys / System / Media / SystemSounds.cs / 1305376 / SystemSounds.cs
using System; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Security.Permissions; namespace System.Media { ///[HostProtection(UI = true)] public sealed class SystemSounds { static SystemSound asterisk; static SystemSound beep; static SystemSound exclamation; static SystemSound hand; static SystemSound question; private SystemSounds() { } /// public static SystemSound Asterisk { get { if (asterisk == null) { asterisk = new SystemSound(NativeMethods.MB_ICONASTERISK); } return asterisk; } } /// public static SystemSound Beep { get { if (beep == null) { beep = new SystemSound(0); } return beep; } } /// public static SystemSound Exclamation { get { if (exclamation == null) { exclamation = new SystemSound(NativeMethods.MB_ICONEXCLAMATION); } return exclamation; } } /// public static SystemSound Hand { get { if (hand == null) { hand = new SystemSound(NativeMethods.MB_ICONHAND); } return hand; } } /// public static SystemSound Question { get { if (question == null) { question = new SystemSound(NativeMethods.MB_ICONQUESTION); } return question; } } private class NativeMethods { // Constructor added because of FxCop rules private NativeMethods() {} internal const int MB_ICONHAND = 0x000010, MB_ICONQUESTION = 0x000020, MB_ICONEXCLAMATION = 0x000030, MB_ICONASTERISK = 0x000040; } } /// [HostProtection(UI = true)] public class SystemSound { private int soundType; internal SystemSound(int soundType) { this.soundType = soundType; } /// [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] public void Play() { IntSecurity.UnmanagedCode.Assert(); try { SafeNativeMethods.MessageBeep(soundType); } finally { System.Security.CodeAccessPermission.RevertAssert(); } } private class SafeNativeMethods { // Constructor added because of FxCop rules private SafeNativeMethods() {} [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] [ResourceExposure(ResourceScope.None)] internal static extern bool MessageBeep(int type); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Security.Permissions; namespace System.Media { /// [HostProtection(UI = true)] public sealed class SystemSounds { static SystemSound asterisk; static SystemSound beep; static SystemSound exclamation; static SystemSound hand; static SystemSound question; private SystemSounds() { } /// public static SystemSound Asterisk { get { if (asterisk == null) { asterisk = new SystemSound(NativeMethods.MB_ICONASTERISK); } return asterisk; } } /// public static SystemSound Beep { get { if (beep == null) { beep = new SystemSound(0); } return beep; } } /// public static SystemSound Exclamation { get { if (exclamation == null) { exclamation = new SystemSound(NativeMethods.MB_ICONEXCLAMATION); } return exclamation; } } /// public static SystemSound Hand { get { if (hand == null) { hand = new SystemSound(NativeMethods.MB_ICONHAND); } return hand; } } /// public static SystemSound Question { get { if (question == null) { question = new SystemSound(NativeMethods.MB_ICONQUESTION); } return question; } } private class NativeMethods { // Constructor added because of FxCop rules private NativeMethods() {} internal const int MB_ICONHAND = 0x000010, MB_ICONQUESTION = 0x000020, MB_ICONEXCLAMATION = 0x000030, MB_ICONASTERISK = 0x000040; } } /// [HostProtection(UI = true)] public class SystemSound { private int soundType; internal SystemSound(int soundType) { this.soundType = soundType; } /// [SuppressMessage("Microsoft.Security", "CA2106:SecureAsserts")] public void Play() { IntSecurity.UnmanagedCode.Assert(); try { SafeNativeMethods.MessageBeep(soundType); } finally { System.Security.CodeAccessPermission.RevertAssert(); } } private class SafeNativeMethods { // Constructor added because of FxCop rules private SafeNativeMethods() {} [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] [ResourceExposure(ResourceScope.None)] internal static extern bool MessageBeep(int type); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- QualifiedCellIdBoolean.cs
- SplineKeyFrames.cs
- UnknownWrapper.cs
- ButtonBaseAdapter.cs
- PropertyValueUIItem.cs
- RangeValuePattern.cs
- Margins.cs
- XmlSchemaAnnotation.cs
- Expression.cs
- ScrollChangedEventArgs.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- WindowsFormsHost.cs
- MenuItemAutomationPeer.cs
- DbParameterCollectionHelper.cs
- HttpCachePolicyWrapper.cs
- UInt64Storage.cs
- Exceptions.cs
- HashCodeCombiner.cs
- WebServiceReceiveDesigner.cs
- SiteMap.cs
- XmlAttributeCache.cs
- PartialList.cs
- DataTableExtensions.cs
- SpinLock.cs
- ExpressionDumper.cs
- GenerateHelper.cs
- ObservableDictionary.cs
- Hash.cs
- WpfPayload.cs
- Latin1Encoding.cs
- EmbeddedMailObjectsCollection.cs
- DesignUtil.cs
- DiscreteKeyFrames.cs
- Win32Native.cs
- XmlArrayItemAttribute.cs
- Visitors.cs
- IItemProperties.cs
- FtpCachePolicyElement.cs
- FormatPage.cs
- LayoutManager.cs
- EastAsianLunisolarCalendar.cs
- BulletChrome.cs
- RenameRuleObjectDialog.Designer.cs
- PropertyTab.cs
- OneOfTypeConst.cs
- OleDbParameterCollection.cs
- TemplateBindingExpressionConverter.cs
- ProviderUtil.cs
- UriSectionData.cs
- _SingleItemRequestCache.cs
- GeneralTransform3DTo2D.cs
- SHA512.cs
- UnsafeNativeMethodsCLR.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- DesignerValidatorAdapter.cs
- TraceUtils.cs
- HScrollBar.cs
- FormView.cs
- CellNormalizer.cs
- AttachmentCollection.cs
- SystemIPInterfaceStatistics.cs
- SchemaDeclBase.cs
- COM2PictureConverter.cs
- BinaryReader.cs
- EdmItemError.cs
- Point3DCollection.cs
- ProviderConnectionPoint.cs
- BrowserCapabilitiesCodeGenerator.cs
- EdmFunctions.cs
- WsatServiceCertificate.cs
- StoreItemCollection.Loader.cs
- BrowserCapabilitiesCompiler.cs
- CatchDesigner.xaml.cs
- BuildProvider.cs
- ReflectPropertyDescriptor.cs
- TextCharacters.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- RightsManagementUser.cs
- WebContext.cs
- XmlChildEnumerator.cs
- TrackingProfile.cs
- WebPartEditVerb.cs
- ChangeDirector.cs
- SocketException.cs
- SQLByte.cs
- InvokeDelegate.cs
- FindProgressChangedEventArgs.cs
- ConnectionStringsSection.cs
- SwitchElementsCollection.cs
- SecurityPolicySection.cs
- CompilationRelaxations.cs
- PackWebResponse.cs
- ServicePointManagerElement.cs
- HideDisabledControlAdapter.cs
- ConfigurationStrings.cs
- HttpRawResponse.cs
- CodeGeneratorOptions.cs
- Form.cs
- prompt.cs
- ColumnWidthChangingEvent.cs