Sound Abspielen



  • Hallo
    Wie kann ich am einfachsten in einem C# Program den Sound abspielen?
    Beim Win32Api gab es eine Funktion: PlaySound(....).
    Ich habe im NET.Framework et 😕 was vergleichbares gesucht aber nichts gefunden.
    Bitte um Hilfe.
    Gruß...



  • Das .NET-Framework ist leider stumm.



  • Nutze über Pinvoke die Win32 und rufe darüber PlaySound auf.
    Oder benutze das VB DirectX.



  • im web habe ich mal folgenden code gefunden.

    ich würde dir ja gerne sagen von wem der ist, leider hat der autor seine quelltexte nicht mit seinem namen versehn.

        public enum PlaySoundFlag
    
        {
    
            // Play synchronously (default)
    
            Synchronously = 0x0000,
    
            // Play asynchronously
    
            Asynchronously = 0x0001,
    
            // Silence (!default) if sound not found
    
            NoDefault = 0x0002,
    
            // pszSound points to a memory file
    
            Memory = 0x0004,
    
            // Loop the sound until next sndPlaySound
    
            Loop = 0x0008,
    
            // Don't stop any currently playing sound
    
            NoStop = 0x0010,
    
            // Don't wait if the driver is busy
    
            NoWait = 0x00002000,
    
            // Name is a registry alias
    
            Alias = 0x00010000,
    
            // Alias is a predefined ID
    
            AliasId = 0x00110000,
    
            // Name is file name
    
            Filename = 0x00020000,
    
            // name is resource name or atom
    
            Resource = 0x00040004,
    
            // Purge non-static events for task
    
            Purge = 0x0040,
    
            // Look for application specific association
    
            Application = 0x0080
    
        }
    
        [DllImport("winmm.dll", ExactSpelling=true, EntryPoint="PlaySound", CharSet=CharSet.Ansi)]
    
        public static extern int PlaySound(String pszSound, int hmod, PlaySoundFlag fdwSound);
    

    [/code]



  • Wofür steht das

    ExactSpelling=true

    beim Importieren der DLL?



  • ExactSpelling
    Auschnitt aus einem Buch:
    "PInvoke versucht, den Namen der angegebenen Funktion dem tatsächlichen Namen, wie im Prototyp angegeben, zuzuordnen. Wenn dieses Feld auf true festgelegt ist, muss der Name des Einstiegspunkts in der nicht verwalteten DLL genau mit dem übergegebenen Namen übereinstimmen."
    Danke für die Hilfe.


Anmelden zum Antworten