Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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);
}
}
}
// 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.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);
}
}
}
// 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
- BaseProcessor.cs
- DPTypeDescriptorContext.cs
- Size.cs
- ParameterBuilder.cs
- ReflectionUtil.cs
- BaseCodePageEncoding.cs
- ObjectDataSourceView.cs
- sqlser.cs
- LayoutEngine.cs
- CodeExpressionRuleDeclaration.cs
- ExpressionBinding.cs
- IconConverter.cs
- SmtpClient.cs
- AttachedPropertyBrowsableAttribute.cs
- StorageComplexTypeMapping.cs
- ZipIOBlockManager.cs
- Color.cs
- ViewEventArgs.cs
- TraceContextEventArgs.cs
- DecimalAnimationUsingKeyFrames.cs
- RsaSecurityToken.cs
- ListViewUpdatedEventArgs.cs
- ImageButton.cs
- RemoteWebConfigurationHost.cs
- BaseEntityWrapper.cs
- VirtualPath.cs
- BooleanStorage.cs
- MaterialGroup.cs
- PassportPrincipal.cs
- BufferModeSettings.cs
- XamlBuildTaskServices.cs
- XmlReaderSettings.cs
- SoapFault.cs
- SQLInt64.cs
- DataGridViewElement.cs
- Substitution.cs
- DataGridViewColumnEventArgs.cs
- AppDomainCompilerProxy.cs
- DataGridRowsPresenter.cs
- SynchronizedInputHelper.cs
- InputLanguage.cs
- Array.cs
- RelationshipNavigation.cs
- HttpHandlersSection.cs
- FrameAutomationPeer.cs
- ActivityFunc.cs
- HWStack.cs
- Visual3DCollection.cs
- ListViewDeleteEventArgs.cs
- IndexingContentUnit.cs
- ToolStripItemClickedEventArgs.cs
- ToolStripComboBox.cs
- UriTemplatePathSegment.cs
- SoapConverter.cs
- TemplateBindingExpression.cs
- PaginationProgressEventArgs.cs
- WebControlAdapter.cs
- Point4DValueSerializer.cs
- BlurEffect.cs
- Assembly.cs
- WebPartCatalogAddVerb.cs
- SqlFileStream.cs
- ProofTokenCryptoHandle.cs
- Rotation3D.cs
- DragCompletedEventArgs.cs
- X509PeerCertificateElement.cs
- Geometry3D.cs
- Bookmark.cs
- ModelPropertyCollectionImpl.cs
- XmlSchemaAttribute.cs
- LockCookie.cs
- SqlCacheDependencyDatabaseCollection.cs
- GZipStream.cs
- CodePrimitiveExpression.cs
- XmlSchemaElement.cs
- JpegBitmapEncoder.cs
- ILGenerator.cs
- xmlfixedPageInfo.cs
- TypeContext.cs
- CollectionChangeEventArgs.cs
- CodeSubDirectoriesCollection.cs
- KnownTypeAttribute.cs
- SafeLibraryHandle.cs
- StyleHelper.cs
- PrintEvent.cs
- WebBrowserBase.cs
- ToolStripRendererSwitcher.cs
- DataSourceCache.cs
- Literal.cs
- PlacementWorkspace.cs
- QilInvoke.cs
- TdsParser.cs
- FactoryGenerator.cs
- AsyncCompletedEventArgs.cs
- CapabilitiesPattern.cs
- StringUtil.cs
- MenuItemStyleCollection.cs
- Image.cs
- HttpListener.cs
- ISFTagAndGuidCache.cs