Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Audiodateien einbinden und abspielen (https://www.delphipraxis.net/39873-audiodateien-einbinden-und-abspielen.html)

Benjin 8. Feb 2005 15:06


Audiodateien einbinden und abspielen
 
Hallo,

ich möchte eine wav datei, die als Ressource eingebunden ist, über buttons abspielen.
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Menus, jpeg;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    MainMenu1: TMainMenu;
    Ansicht1: TMenuItem;
    Optionen1: TMenuItem;
    Info1: TMenuItem;
    Vollbildmodus1: TMenuItem;
    Fenstermodus1: TMenuItem;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Image1: TImage;
    PrinterSetupDialog1: TPrinterSetupDialog;
    PrintDialog1: TPrintDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation
uses mmsystem;

{$R *.DFM}
{$R bicasso.res}

procedure TForm1.Button1Click(Sender: TObject);
begin
 // Sounds stoppen
  PlaySound(nil,0,0);
  // Wavedatei aus Resource abspielen (SND_RESOURCE) und
  // nicht warten, bis das Abspielen beendet ist (SND_ASYNC)
  PlaySound('Waveresource',hInstance,SND_RESOURCE or SND_ASYNC);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  // Sounds stoppen
  PlaySound(nil,0,0);
end;

end.
Leider bekomme ich dabei die Meldung:

duplicate resource:
type wave, ID waveresource: C:\...\*.res


prinzipiell ist die Fehlermeldung verständlich, aber wie behebt man den Fehler?
habe ich die Ressource womöglich doppelt eingebunden?


Vielen Dank,

Jan

Delphi-Noobie 8. Feb 2005 17:09

Re: Audiodateien einbinden und abspielen
 
Vielleicht hast du ne 2. Unit, wo eine Resource eingebunden ist, wo die selbe Sound datei drin ist oder du hast beim reinschreiben in die Textdatei, befor du sie zur rc-Datei kompilierst nen Namen doppelt z.B. waveresource wave "waveresource.wav" und dann z.B
waveresource wave "anderewav.wav" //<- irgendeine Doppelbezeichnung

Weiß aber nicht ob das alle Problemzonen sind (bei mir wars es mal in beiden Fällen so)

Benjin 9. Feb 2005 10:22

Re: Audiodateien einbinden und abspielen
 
Hab das Problem inzwischen "gelöst", indem ich einfach die Zeile

Delphi-Quellcode:
{$R bicasso.res}
entfernt habe,


Kann mir das vielleicht jemand erklären? :-)

Flax 9. Feb 2005 10:50

Re: Audiodateien einbinden und abspielen
 
Dabei handelte es sich anscheinend um die doppelte Ressource!

Hast die Resourcendatei in die Unit eingebunden mit

$R bicasso.res}

und deswegen der Fehler.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz