AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Delphi Sounds Problem

Ein Thema von Windowscratcher · begonnen am 9. Mai 2012 · letzter Beitrag vom 20. Mai 2012
Antwort Antwort
Seite 1 von 2  1 2   
Windowscratcher

Registriert seit: 9. Mai 2012
24 Beiträge
 
#1

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 15:54
Ich verstehe noch nicht ganz, was der bewirken soll.
Ich hab mal Zeile 40 markiert, und dann F9 gedrückt. Dann hat sich das Programm gestartet und danach hat das Programm wieder zur Unit gewechselt. Es hat als erstes "begin" grün markiert (falls es nicht grün ist, wisst ihr, dass ich eine Rot-Grün Sehschwäche hab ), dann die nächste Zeile "FilePath := ....", dann wieder die nächste "if..." und dann hat es einfach alles bis zum nächstgelegenen "end" übersprungen und danach ist es zum "end" des OptionenBtn gegangen. Dann haben sich wieder die Unit-Fenster geöffnet...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.385 Beiträge
 
Delphi 12 Athens
 
#2

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 16:16
@p80286:

Ich weiß nicht wie es in Lazarus aussieht, aber
geh im Delphi mal in die Projektoptionen, aktiviere dort "Mit Debug-DCUs kompilieren" und nun schau was bei deinem F7 passiert.
(alle Delphi-Versionen ala Standard, Personal, Starter und Trial sind davon ausgeschlossen)

Auch drittanbieter Units, welche mit Debiginfos kompiliert sind, machen diesbezüglich sehr viel Spaß.
(Eurekalog, DevExpress und Co. sind diesbezüglich der pure Horror)

In einigen älteren Delphis gibt es den spaß, daß alle beigelegten Indy-Units mit Debuginfos kompiliert wurden.
(obwohl eigentlich/theoretisch zwei Varianten bei lagen, aber leider waren auch die NonDebug-Dateien mit Debuginfos versehn )
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (10. Mai 2012 um 16:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 17:14
@p80286:

Ich weiß nicht wie es in Lazarus aussieht, aber
geh im Delphi mal in die Projektoptionen, aktiviere dort "Mit Debug-DCUs kompilieren" und nun schau was bei deinem F7 passiert.
Hab ich Blödsinn geschrieben?
Debug-DCUs hab ich nicht aber Linker: DCUs erzeugen reicht doch?

Ein Programm"start" mit F8 stept brav durch die DPR
Delphi-Quellcode:
begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm2, Form2);
  Application.Run;
end.
Sobald der Cursor in Application.Run; steht F7 und ich bin in meinem eigenen Geschreibsel.

?Lazarus? damit hab ich (noch) nichts am Hut.

Sollte das bei Programmstart angezeigt werden? Bei mir tut sich nichts... Kann ich das auch mit dem Befehl "Panel2.Caption:='...'" machen ?
Sobald der String mit dem Pfadnamen erstellt ist sollte ein Meldungsfenster aufgehen und den Pfadnamen anzeigen. Ist das nicht der Fall, wird PlayMySound nicht aufgerufen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (10. Mai 2012 um 17:21 Uhr) Grund: Zusatz
  Mit Zitat antworten Zitat
Windowscratcher

Registriert seit: 9. Mai 2012
24 Beiträge
 
#4

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 17:53
@p80286: Ich find die Option nicht... Ich habe jetzt aber den Befehl "ShowMessage(FilePath) Mal VOR den "IF" Satz getan und siehe da: Er erscheint. Wenn er aber im IF Satz steht, passiert nichts. Was muss ich jetzt machen?
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#5

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 18:01
Bist du dir sicher, das der Pfad und die Datei wirklich existieren?
Was steht in der Message?
  Mit Zitat antworten Zitat
Windowscratcher

Registriert seit: 9. Mai 2012
24 Beiträge
 
#6

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 18:03
[Window Title]
project1

[Content]
C:\Users\Filip\Documents\Schule\Physik und Technik\Physik und Technik\PT-Projekt\Programm\Modem.wav

[OK]

@BUG Das steht in der Message. Eigentlich der Dateipfad, wo die Datei enthalten ist. Ich versteh es echt nicht...
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#7

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 18:08
Ich habe jetzt aber den Befehl "ShowMessage(FilePath) Mal VOR den "IF" Satz getan und siehe da: Er erscheint. Wenn er aber im IF Satz steht, passiert nichts.
Ich hab den Code doch genau so gegeben. Die Anweisung ShowMessage steht vor der if-Bedingung. Insofern verstehe ich das Problem nicht.

Zitat:
[Window Title]
project1

[Content]
C:\Users\Filip\Documents\Schule\Physik und Technik\Physik und Technik\PT-Projekt\Programm\Modem.wav

[OK]

@BUG Das steht in der Message. Eigentlich der Dateipfad, wo die Datei enthalten ist. Ich versteh es echt nicht...
Ist das Verzeichnis "Physik und Technik" wirklich doppelt? Was passiert, wenn du genau diesen Pfad (ohne den Dateinamen Modem.wav) in die Adresszeile des Explorers kopierst und bestätigst?

MfG Dalai
  Mit Zitat antworten Zitat
Windowscratcher

Registriert seit: 9. Mai 2012
24 Beiträge
 
#8

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 18:11
@Dalai Der Dateipfad ist richtig, habs mit dem Explorer ausprobiert. Und sorry, dann hab ichs ausversehen nach dem IF Satz hingeschrieben
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#9

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 18:24
Wenn der Pfad stimmt, stimmt der Dateiname nicht. Denn die FileExists-Funktion gibt ja nicht ohne Grund False zurück.

MfG Dalai
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#10

AW: Delphi Sounds Problem

  Alt 10. Mai 2012, 16:23
Und was verstehst du jetzt daran nicht? Das von dir beobachtete Verhalten ist der abgelaufene Codefluss oder Block von Anweisungen, die wirklich ausgeführt wurden. Hast du dich noch nicht gefragt, wie man feststellt, ob ein Programm die Anweisungen ausführt, die man sich im Kopf vorstellt? Genau dafür sind der Debugger und die Haltepunkte da (es gibt noch mehr Dinge, aber die sind weniger wichtig).

Im Konkreten hast du also festgestellt, dass Anweisungen übersprungen wurden, die deiner Meinung nach ausgeführt werden sollten. Nun weißt du, welche das sind und solltest untersuchen, warum das so ist. Am einfachsten ist es wohl, sich den Pfad der abzuspielenden Datei mal mittels ShowMessage anzeigen zu lassen und zu prüfen, ob's diese Datei wirklich gibt. In Codeform:
Delphi-Quellcode:
procedure PlayMySound(SndName: String); //uses mmSystem
var
  FilePath: String;
begin
  FilePath := ExtractFilePath(ParamStr(0)) +'Musik\' + SndName + '.wav';
  ShowMessage(FilePath); //<-- Diese Zeile hinzugefügt
  if FileExists(FilePath) then
    //SndPlaySound(PAnsiChar(FilePath), SND_ASYNC ); //Alternative
    PlaySound(PChar(FilePath), hInstance, SND_ASYNC or SND_FILENAME);
end;
MfG Dalai
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz