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
- XmlToDatasetMap.cs
- WebServicesSection.cs
- HtmlValidationSummaryAdapter.cs
- OleDbPropertySetGuid.cs
- XslTransform.cs
- CompilationPass2Task.cs
- TextSchema.cs
- CodeAttributeArgument.cs
- SchemaDeclBase.cs
- JoinQueryOperator.cs
- JournalEntryListConverter.cs
- FontSourceCollection.cs
- Imaging.cs
- itemelement.cs
- ProtocolsSection.cs
- _CommandStream.cs
- ManagementDateTime.cs
- StretchValidation.cs
- ExpressionParser.cs
- BindingContext.cs
- Frame.cs
- DesignerTextBoxAdapter.cs
- Stylesheet.cs
- ListItemParagraph.cs
- ToolConsole.cs
- FontStretches.cs
- LayoutSettings.cs
- hwndwrapper.cs
- COM2PropertyDescriptor.cs
- EditorZoneDesigner.cs
- InstanceCreationEditor.cs
- TransactionManagerProxy.cs
- RefreshInfo.cs
- Literal.cs
- RectKeyFrameCollection.cs
- MultipleViewProviderWrapper.cs
- XmlHierarchicalEnumerable.cs
- IRCollection.cs
- XXXOnTypeBuilderInstantiation.cs
- WindowsSysHeader.cs
- StringConverter.cs
- StorageScalarPropertyMapping.cs
- EntityCommand.cs
- XmlSecureResolver.cs
- FlagPanel.cs
- PolyBezierSegmentFigureLogic.cs
- __Filters.cs
- WSHttpTransportSecurityElement.cs
- AnimationStorage.cs
- CodeNamespaceCollection.cs
- SqlProfileProvider.cs
- SRGSCompiler.cs
- EntityCommandCompilationException.cs
- SHA512Cng.cs
- ShimAsPublicXamlType.cs
- Material.cs
- XmlSchemaDocumentation.cs
- ToolBarOverflowPanel.cs
- MarkupExtensionParser.cs
- XmlSchemaSimpleTypeRestriction.cs
- CellTreeNode.cs
- HostingEnvironment.cs
- DataStreamFromComStream.cs
- ComboBoxAutomationPeer.cs
- XamlStream.cs
- ZipIOExtraFieldPaddingElement.cs
- WebPartHelpVerb.cs
- ScriptReferenceEventArgs.cs
- FormatterServices.cs
- FlowDocumentFormatter.cs
- FileEnumerator.cs
- TextBoxAutoCompleteSourceConverter.cs
- ExtensionQuery.cs
- XmlSerializerOperationFormatter.cs
- Query.cs
- ContainerCodeDomSerializer.cs
- BaseValidator.cs
- TracedNativeMethods.cs
- CodeMemberEvent.cs
- ComponentEditorPage.cs
- CharacterHit.cs
- WindowsGraphics2.cs
- ClientEventManager.cs
- BindingValueChangedEventArgs.cs
- TypeUtil.cs
- ResolveNameEventArgs.cs
- AsyncResult.cs
- CryptoKeySecurity.cs
- MouseButton.cs
- _OverlappedAsyncResult.cs
- ListBoxItemWrapperAutomationPeer.cs
- CodeConstructor.cs
- ComPlusAuthorization.cs
- DrawItemEvent.cs
- ValidatorCompatibilityHelper.cs
- RbTree.cs
- CharacterString.cs
- OleDbParameterCollection.cs
- ColorConverter.cs
- Parser.cs