Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConfigXmlText.cs
- KnownBoxes.cs
- SmiMetaDataProperty.cs
- ContextDataSourceContextData.cs
- SafePEFileHandle.cs
- Configuration.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- DNS.cs
- DoWorkEventArgs.cs
- AxisAngleRotation3D.cs
- basevalidator.cs
- RequestResizeEvent.cs
- ConfigXmlAttribute.cs
- RelationalExpressions.cs
- IDispatchConstantAttribute.cs
- DataColumnPropertyDescriptor.cs
- Serializer.cs
- HttpListenerContext.cs
- SoapRpcMethodAttribute.cs
- TileModeValidation.cs
- FilteredAttributeCollection.cs
- ECDiffieHellmanCng.cs
- EntryWrittenEventArgs.cs
- Renderer.cs
- FormatterServices.cs
- MsmqIntegrationBinding.cs
- MimeBasePart.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- InstanceContextManager.cs
- XamlLoadErrorInfo.cs
- GuidConverter.cs
- X509SecurityTokenAuthenticator.cs
- NotConverter.cs
- CssStyleCollection.cs
- ProviderException.cs
- SortDescriptionCollection.cs
- CultureInfo.cs
- XmlReaderSettings.cs
- ResumeStoryboard.cs
- SimpleExpression.cs
- Size3DConverter.cs
- BinaryEditor.cs
- RangeValueProviderWrapper.cs
- EmulateRecognizeCompletedEventArgs.cs
- AddToCollection.cs
- NonClientArea.cs
- AsymmetricAlgorithm.cs
- LinqDataSourceSelectEventArgs.cs
- Behavior.cs
- XmlDocumentFragment.cs
- ColorInterpolationModeValidation.cs
- DataGridViewSortCompareEventArgs.cs
- SRDisplayNameAttribute.cs
- TripleDES.cs
- ListView.cs
- XmlIncludeAttribute.cs
- SettingsProperty.cs
- ColorContext.cs
- GeometryGroup.cs
- QuadraticBezierSegment.cs
- OrderingExpression.cs
- ManifestSignedXml.cs
- Lease.cs
- CachedBitmap.cs
- SafeNativeMethods.cs
- ObfuscationAttribute.cs
- ItemType.cs
- LogicalExpr.cs
- panel.cs
- RuntimeComponentFilter.cs
- MessageContractExporter.cs
- LayoutEngine.cs
- ConfigUtil.cs
- WpfXamlType.cs
- RegisteredExpandoAttribute.cs
- TimeSpanValidatorAttribute.cs
- UrlMappingsSection.cs
- SchemaComplexType.cs
- FixedStringLookup.cs
- SortDescription.cs
- UiaCoreApi.cs
- DBSchemaTable.cs
- TreeNodeCollection.cs
- SystemUdpStatistics.cs
- ObjectListFieldCollection.cs
- ThreadAbortException.cs
- SizeConverter.cs
- AnnotationDocumentPaginator.cs
- TracingConnection.cs
- EncodingNLS.cs
- FontResourceCache.cs
- SuppressMessageAttribute.cs
- Animatable.cs
- PlatformCulture.cs
- FormViewInsertedEventArgs.cs
- MULTI_QI.cs
- ProcessThread.cs
- FtpWebRequest.cs
- SelectionProcessor.cs
- EmptyStringExpandableObjectConverter.cs