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
- CorrelationExtension.cs
- WriterOutput.cs
- DiagnosticTraceSource.cs
- XsltArgumentList.cs
- MappingModelBuildProvider.cs
- PanelStyle.cs
- DoubleLinkList.cs
- QilTargetType.cs
- RSAPKCS1SignatureFormatter.cs
- ExtenderProvidedPropertyAttribute.cs
- XmlUtil.cs
- WebPartCancelEventArgs.cs
- ImagingCache.cs
- ResourcesGenerator.cs
- XmlCollation.cs
- CodeEntryPointMethod.cs
- LineProperties.cs
- HtmlImage.cs
- ConstructorBuilder.cs
- ArrayTypeMismatchException.cs
- ConnectionProviderAttribute.cs
- PropVariant.cs
- HtmlEmptyTagControlBuilder.cs
- SqlInternalConnection.cs
- XmlWriterSettings.cs
- SchemaContext.cs
- TextEditorSpelling.cs
- wgx_exports.cs
- PropertyReferenceSerializer.cs
- XmlSchemaValidationException.cs
- PropertyValueUIItem.cs
- TraceHandlerErrorFormatter.cs
- ScrollableControl.cs
- HuffCodec.cs
- WebConfigurationManager.cs
- XmlUtil.cs
- MimeReflector.cs
- AutomationIdentifierGuids.cs
- RawUIStateInputReport.cs
- EventLogPermissionEntryCollection.cs
- TraceUtils.cs
- Vector3DIndependentAnimationStorage.cs
- DataServiceStreamProviderWrapper.cs
- DiffuseMaterial.cs
- Section.cs
- SelectionListDesigner.cs
- RuntimeArgumentHandle.cs
- DataGridViewHitTestInfo.cs
- MetadataWorkspace.cs
- CopyOfAction.cs
- LiteralControl.cs
- MatrixTransform.cs
- WebPartUserCapability.cs
- DefaultPrintController.cs
- FileSecurity.cs
- Mutex.cs
- ValidatorCollection.cs
- XmlNamedNodeMap.cs
- ToolStripItemBehavior.cs
- NameObjectCollectionBase.cs
- HorizontalAlignConverter.cs
- TabletCollection.cs
- MediaTimeline.cs
- ObjectDataSourceDisposingEventArgs.cs
- InstanceDescriptor.cs
- ScrollChrome.cs
- Set.cs
- FactoryRecord.cs
- RadialGradientBrush.cs
- StreamInfo.cs
- CompiledXpathExpr.cs
- HandlerMappingMemo.cs
- ChangeDirector.cs
- SafeEventLogReadHandle.cs
- AppDomainProtocolHandler.cs
- GroupItem.cs
- Switch.cs
- ErrorRuntimeConfig.cs
- TextLineBreak.cs
- DataConnectionHelper.cs
- ExplicitDiscriminatorMap.cs
- ComplexBindingPropertiesAttribute.cs
- CompositeCollection.cs
- COM2TypeInfoProcessor.cs
- ExpressionConverter.cs
- SplashScreen.cs
- Converter.cs
- CustomErrorCollection.cs
- SqlConnectionStringBuilder.cs
- QueryConverter.cs
- DPCustomTypeDescriptor.cs
- AuthorizationRule.cs
- RelationshipManager.cs
- DesignerVerbCollection.cs
- Effect.cs
- SignatureResourceHelper.cs
- InkPresenterAutomationPeer.cs
- EtwTrace.cs
- ControlAdapter.cs
- HyperLinkColumn.cs