473,322 Members | 1,614 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,322 software developers and data experts.

How to play sound in .net?

CM
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias "sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just
wonder how to play sound in .net?

Thanks!

CM
Nov 20 '05 #1
12 6543
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias "sndPlaySoundA" _

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just
wonder how to play sound in .net?

Thanks!

CM

Nov 20 '05 #2
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias "sndPlaySoundA" _

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just
wonder how to play sound in .net?

Thanks!

CM

Nov 20 '05 #3
CM
Thank you very much!
CM
Nov 20 '05 #4
CM
Thank you very much!
CM
Nov 20 '05 #5
CM
Hi, James:
It seems can only play .wav file. How to play .rm or other sound file?
Thanks!
CM

"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just wonder how to play sound in .net?

Thanks!

CM


Nov 20 '05 #6
CM
Hi, James:
It seems can only play .wav file. How to play .rm or other sound file?
Thanks!
CM

"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just wonder how to play sound in .net?

Thanks!

CM


Nov 20 '05 #7
rm needs it's own api I believe. sorry can't help there
"CM" <cm***@hotmail.com> wrote in message
news:uq**************@TK2MSFTNGP11.phx.gbl...
Hi, James:
It seems can only play .wav file. How to play .rm or other sound file?
Thanks!
CM

"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I

just wonder how to play sound in .net?

Thanks!

CM



Nov 20 '05 #8
rm needs it's own api I believe. sorry can't help there
"CM" <cm***@hotmail.com> wrote in message
news:uq**************@TK2MSFTNGP11.phx.gbl...
Hi, James:
It seems can only play .wav file. How to play .rm or other sound file?
Thanks!
CM

"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I

just wonder how to play sound in .net?

Thanks!

CM



Nov 20 '05 #9
MSN
I couldn't get this to work on web pages.
Does this work on web pages?
"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just wonder how to play sound in .net?

Thanks!

CM


Nov 20 '05 #10
MSN
I couldn't get this to work on web pages.
Does this work on web pages?
"james" <mo**********@nyc.rr.com> wrote in message
news:uC**************@tk2msftngp13.phx.gbl...
try this:

'//Win32API
'//Both integer args and return were originally Longs - .NET Integer = vb6
Long
Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Integer, _
ByVal dwFlags As Integer) As Integer

Friend Sub PlayAudio(ByVal FileName As String)
'//call win32api function to play audio (wav) file alert
Dim retval As Integer
retval = PlaySound(FileName, 0, 1)
'last param is SND_SYNC as integer
'value set to 0 plays sound Synchronously (waits until sound ends before
playing next)
'value set to 1 plays sound Asynchronously (does not wait to play next
sound)
End Sub

"CM" <cm***@hotmail.com> wrote in message
news:u6**************@TK2MSFTNGP10.phx.gbl...
Hi,

I used to use the following code to play sound in VB6:

Public Declare Function sndPlaySound32 Lib "winmm.dll" Alias

"sndPlaySoundA"
_

(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

call sndPlaySound32("c:\WinNt\Media\ding.wav", 0)

However, .net don't recognize "call", and generate a syntax error. I just wonder how to play sound in .net?

Thanks!

CM


Nov 20 '05 #11
hi y dun u try this.....
u'll have to import de interopeservices namespace b4 u proceed with
using API as
=========================================
Imports System.Runtime.InteropServices
''' then
Public Class API ' u can put other api's in here
<DllImport("winmm.dll")> Public Shared Function
PlaySound(ByVal lpszName As String, ByVal hModule As Long, ByVal
dwFlags As Long) As Long
End Function
End Class
=========================================
''''call this functtion as
api.playsound("any sound file path u want",lhModule,dWflags)
'''' the details of params for d above function is'''
Parameter Information:
===============================================
Private Const SND_APPLICATION = &H80 ' look for
application specific association
Private Const SND_ALIAS = &H10000 ' name is a WIN.INI [sounds]
entry
Private Const SND_ALIAS_ID = &H110000 ' name is a WIN.INI
[sounds] entry identifier
Private Const SND_ASYNC = &H1 ' play asynchronously
Private Const SND_FILENAME = &H20000 ' name is a file name
Private Const SND_LOOP = &H8 ' loop the sound until next
sndPlaySound
Private Const SND_MEMORY = &H4 ' lpszSoundName points to a
memory file
Private Const SND_NODEFAULT = &H2 ' silence not default,
if sound not found
Private Const SND_NOSTOP = &H10 ' don't stop any currently
playing sound
Private Const SND_NOWAIT = &H2000 ' don't wait if the driver
is busy
Private Const SND_PURGE = &H40 ' purge non-static
events for task
Private Const SND_RESOURCE = &H40004 ' name is a resource name
or atom
Private Const SND_SYNC = &H0 ' play synchronously
(default)
===========================================
Function Definition:
===========================================
PlaySound
The PlaySound function plays a sound specified by the given filename,
resource, or system event. (A system event may be associated with a
sound in the registry or in the WIN.INI file.)

VB4-32,5,6
Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal
lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As
Long

Operating Systems Supported
Requires Windows NT 3.1 or later; Requires Windows 95 or later
Library
Winmm
=============================================
Parameter Information in detail
=============================================
• pszSound
A string that specifies the sound to play. If this parameter is NULL,
any currently playing waveform sound is stopped. To stop a
non-waveform sound, specify SND_PURGE in the fdwSound parameter.
Three flags in fdwSound (SND_ALIAS, SND_FILENAME, and SND_RESOURCE)
determine whether the name is interpreted as an alias for a system
event, a filename, or a resource identifier. If none of these flags
are specified, PlaySound searches the registry or the WIN.INI file
for an association with the specified sound name. If an association
is found, the sound event is played. If no association is found in
the registry, the name is interpreted as a filename.

• hmod
Handle of the executable file that contains the resource to be loaded.
This parameter must be NULL unless SND_RESOURCE is specified in
fdwSound.

• fdwSound
Flags for playing the sound. The following values are defined:
SND_APPLICATION
The sound is played using an application-specific association.
SND_ALIAS
The pszSound parameter is a system-event alias in the registry or the
WIN.INI file. Do not use with either SND_FILENAME or SND_RESOURCE.
SND_ALIAS_ID
The pszSound parameter is a predefined sound identifier.
SND_ASYNC
The sound is played asynchronously and PlaySound returns immediately
after beginning the sound. To terminate an asynchronously played
waveform sound, call PlaySound with pszSound set to NULL.
SND_FILENAME
The pszSound parameter is a filename.
SND_LOOP
The sound plays repeatedly until PlaySound is called again with the
pszSound parameter set to NULL. You must also specify the SND_ASYNC
flag to indicate an asynchronous sound event.
SND_MEMORY
A sound event’s file is loaded in RAM. The parameter specified by
pszSound must point to an image of a sound in memory.
SND_NODEFAULT
No default sound event is used. If the sound cannot be found,
PlaySound returns silently without playing the default sound.
SND_NOSTOP
The specified sound event will yield to another sound event that is
already playing. If a sound cannot be played because the resource
needed to generate that sound is busy playing another sound, the
function immediately returns FALSE without playing the requested
sound.
If this flag is not specified, PlaySound attempts to stop the
currently playing sound so that the device can be used to play the
new sound.
SND_NOWAIT
If the driver is busy, return immediately without playing the sound.
SND_PURGE
Sounds are to be stopped for the calling task. If pszSound is not
NULL, all instances of the specified sound are stopped. If pszSound
is NULL, all sounds that are playing on behalf of the calling task
are stopped.
You must also specify the instance handle to stop SND_RESOURCE
events.
SND_RESOURCE
The pszSound parameter is a resource identifier; hmod must identify
the instance that contains the resource.
SND_SYNC
Synchronous playback of a sound event. PlaySound returns after the
sound event completes.
Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error
information, call GetLastError

Nov 20 '05 #12
On 2004-04-16, parth_mca <pa*******@hotmail-dot-com.no-spam.invalid> wrote:
hi y dun u try this.....
u'll have to import de interopeservices namespace b4 u proceed with
using API as
=========================================
Imports System.Runtime.InteropServices
''' then
Public Class API ' u can put other api's in here
<DllImport("winmm.dll")> Public Shared Function
PlaySound(ByVal lpszName As String, ByVal hModule As Long, ByVal
dwFlags As Long) As Long
End Function
End Class
This is wrong...

It should be:

Public Class API
<DllImport("winmm.dll", SetLastError:=True)> _
Public Shared Function PlaySound (ByVal lpszName As String, _
ByVal hModule As IntPtr,
ByVal dwFlags As Integer) As Boolean

End Function
End Class
=========================================
''''call this functtion as
api.playsound("any sound file path u want",lhModule,dWflags)
'''' the details of params for d above function is'''
The call would look something like:

If Not API.PlaySound("Path", IntPtr.Zero, dwFlags) Then
Dim e As New _
System.ComponentModel.Win32Exception( _
Marshal.GetLastWin32Error())

MessageBox.Show (e.Message)
End If
Parameter Information:
===============================================


You must not be using Option Strict On... Bad Idea...

Private Const SND_APPLICATION As Integer = &H80 ' look for application specific association

Repeat for all these constants...
--
Tom Shelton [MVP]
Powered By Gentoo Linux 1.4
"Oh no, not again."

- A bowl of petunias on it's way to certain death.
Nov 20 '05 #13

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

22
by: The Road To Utopia | last post by:
Here's one for the trolls...a common jibe from them is setting up audio/video hardware under linux. Ok, true story: at work today, someone asked me if I could tell him why his XP Home would play...
6
by: Andrew Poulos | last post by:
As a follow on to the 'fun' I had with IE I'm now trying to play sounds using an Object tag (no Embed) in MZ. Sadly whenever 'playButton' gets clicked MZ says that "audObj.Play is not a function":...
1
by: Ron Provost | last post by:
Hello, I'm developing a piece of software to assist illiteraate adults to learn to read. I'm trying to figure out how, if possible, to make audio playback asynchrnous but still controllable. ...
2
by: NB | last post by:
I've done a thorough search, but could not find any posts If I store a sound file within the mdb, How do I play it (in a form event, for example) I can save it to a temp folder and call the...
22
by: MLH | last post by:
I have some audio help files that play fine from within Access 97 and Access 2.0. Both are running on a Windows XP box. But I do not know what program plays the files. If I click Start, Run and...
5
by: Dennis C. Drumm | last post by:
I have a windows form configured as a fixed dialog I'm using as a custom MessageBox (has some additional buttons). How do I get it to play the standard windows sounds when envoked and can I insert...
1
by: Lam | last post by:
how can I play sound file in a .aspx page written in C#? I try to use the code like the following. But whenI call the play function play("sound.wav", this.SND_ASYNC) my computer give out "be"...
3
by: Jared | last post by:
I'm using the first code sample below to play WAV files stored as embedded resources. For some reason I *occasionally* get scratching and crackling. I'm using a couple WAVs that ship with...
5
by: | last post by:
Hello, I am wrtting a program that does some sound effects... the files are stored in a subfolder in the application folder... and I check the existence of the files before calling the method to...
26
by: Jake Barnes | last post by:
I did a search on the newsgroup comp.lang.javascript. I was searching for "how to play a sound with Javascript". I'm somewhat suprised that the majority of entries are from the 1990s, and there are...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.