Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Sys / System / Media / SystemSounds.cs / 1 / SystemSounds.cs
using System; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Runtime.InteropServices; 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)] internal static extern bool MessageBeep(int type); } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InfocardExtendedInformationCollection.cs
- SecurityState.cs
- Imaging.cs
- ClosableStream.cs
- SafeViewOfFileHandle.cs
- CharacterMetrics.cs
- AssertFilter.cs
- XmlNodeChangedEventManager.cs
- XmlSubtreeReader.cs
- SettingsAttributeDictionary.cs
- CollectionConverter.cs
- EmptyQuery.cs
- Point3D.cs
- ColorAnimation.cs
- PathSegment.cs
- BinarySerializer.cs
- RecommendedAsConfigurableAttribute.cs
- OletxCommittableTransaction.cs
- PlatformNotSupportedException.cs
- _LoggingObject.cs
- FixedHighlight.cs
- uribuilder.cs
- EnumCodeDomSerializer.cs
- StateBag.cs
- dataprotectionpermission.cs
- XamlPointCollectionSerializer.cs
- UserControlCodeDomTreeGenerator.cs
- LicenseException.cs
- WriteStateInfoBase.cs
- diagnosticsswitches.cs
- TextServicesProperty.cs
- HttpListener.cs
- WebScriptMetadataMessageEncoderFactory.cs
- ByteConverter.cs
- XNodeNavigator.cs
- DefaultProxySection.cs
- AnnotationComponentChooser.cs
- DragDropManager.cs
- AdornerDecorator.cs
- WindowsTab.cs
- HttpApplication.cs
- LocalValueEnumerator.cs
- DynamicDocumentPaginator.cs
- WebServiceEndpoint.cs
- IdlingCommunicationPool.cs
- StylusLogic.cs
- EndpointInfo.cs
- PrimitiveSchema.cs
- DescendantOverDescendantQuery.cs
- UnsafeNativeMethods.cs
- PropertiesTab.cs
- EditCommandColumn.cs
- CompilationLock.cs
- JpegBitmapDecoder.cs
- WindowsSolidBrush.cs
- Command.cs
- Stack.cs
- DayRenderEvent.cs
- SynchronizedPool.cs
- WebConfigurationHostFileChange.cs
- EventPrivateKey.cs
- AbstractDataSvcMapFileLoader.cs
- SvcMapFileLoader.cs
- RangeValidator.cs
- CursorConverter.cs
- ReadOnlyHierarchicalDataSourceView.cs
- ConstructorBuilder.cs
- RuntimeComponentFilter.cs
- SqlUnionizer.cs
- WaitHandle.cs
- TypeCollectionDesigner.xaml.cs
- ThreadSafeMessageFilterTable.cs
- ApplicationInfo.cs
- DefaultSection.cs
- ImportContext.cs
- ListViewInsertionMark.cs
- ListItemCollection.cs
- LicenseContext.cs
- XmlCDATASection.cs
- Line.cs
- BamlResourceDeserializer.cs
- SetterBase.cs
- DataGridViewLinkColumn.cs
- RadioButtonStandardAdapter.cs
- ItemTypeToolStripMenuItem.cs
- Panel.cs
- backend.cs
- securitymgrsite.cs
- MailBnfHelper.cs
- ToolStripDropDownClosedEventArgs.cs
- InstanceLockLostException.cs
- TypeToArgumentTypeConverter.cs
- ServiceEndpointAssociationProvider.cs
- CultureInfo.cs
- unitconverter.cs
- FlowLayoutPanel.cs
- ParameterToken.cs
- DataMemberFieldConverter.cs
- ShapingWorkspace.cs
- BitmapCacheBrush.cs