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
- ChameleonKey.cs
- Debug.cs
- UrlParameterWriter.cs
- TextElementCollectionHelper.cs
- EntryPointNotFoundException.cs
- DataBoundControlAdapter.cs
- WsatServiceAddress.cs
- Brush.cs
- TransformConverter.cs
- FormClosedEvent.cs
- CookielessHelper.cs
- TextEditorDragDrop.cs
- InputMethodStateChangeEventArgs.cs
- ToolStripSeparator.cs
- VisualStyleInformation.cs
- HwndHost.cs
- FactoryGenerator.cs
- OutOfProcStateClientManager.cs
- UnsafeNativeMethods.cs
- SchemaLookupTable.cs
- HideDisabledControlAdapter.cs
- OutputBuffer.cs
- RelationshipEndMember.cs
- GeneralTransform2DTo3D.cs
- RectangleHotSpot.cs
- UpdateRecord.cs
- PrinterSettings.cs
- XamlTypeMapper.cs
- HtmlInputCheckBox.cs
- RangeBase.cs
- ScriptResourceHandler.cs
- ObjectItemCachedAssemblyLoader.cs
- RangeBaseAutomationPeer.cs
- TextSelectionHighlightLayer.cs
- ellipse.cs
- BrushConverter.cs
- TextCompositionManager.cs
- EntityConnection.cs
- CaseStatementProjectedSlot.cs
- StorageModelBuildProvider.cs
- _HelperAsyncResults.cs
- RequestCacheValidator.cs
- BoundPropertyEntry.cs
- EditorZone.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- DesignTimeType.cs
- BaseCodeDomTreeGenerator.cs
- Match.cs
- InternalControlCollection.cs
- TextChangedEventArgs.cs
- LateBoundBitmapDecoder.cs
- AgileSafeNativeMemoryHandle.cs
- TreeViewItemAutomationPeer.cs
- PackageFilter.cs
- Point3D.cs
- BindingMemberInfo.cs
- TextTreeUndoUnit.cs
- FileSystemInfo.cs
- Point.cs
- ACL.cs
- OleDbParameterCollection.cs
- SubpageParagraph.cs
- XmlUtilWriter.cs
- WebBrowserNavigatedEventHandler.cs
- TextOnlyOutput.cs
- WebPartEditorCancelVerb.cs
- DataGrid.cs
- NameTable.cs
- Random.cs
- ClonableStack.cs
- ApplicationServiceManager.cs
- IdentityNotMappedException.cs
- EnumBuilder.cs
- ConfigurationCollectionAttribute.cs
- CompositeScriptReference.cs
- CommandPlan.cs
- CommonXSendMessage.cs
- BinHexEncoder.cs
- MenuAdapter.cs
- XamlStyleSerializer.cs
- CompensatableSequenceActivity.cs
- XmlTextReader.cs
- OutputCacheProfile.cs
- LabelEditEvent.cs
- ZipPackagePart.cs
- As.cs
- IconBitmapDecoder.cs
- TypeResolver.cs
- InputChannelAcceptor.cs
- EventDescriptor.cs
- Atom10FormatterFactory.cs
- DataTableNameHandler.cs
- EntityKeyElement.cs
- FieldNameLookup.cs
- WorkflowOwnershipException.cs
- DataGrid.cs
- ConnectionInterfaceCollection.cs
- SafeArrayRankMismatchException.cs
- Type.cs
- HostedHttpContext.cs