Einzelnen Beitrag anzeigen

Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
900 Beiträge
 
Delphi 11 Alexandria
 
#52

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?

  Alt 3. Jun 2009, 10:18
StatusProc bekommt ja die Daten zum Speichern. Je nachdem, was der User durch vorheriges Knöpfchendrücken gewünscht hat, sollen die Daten gespeichert oder verworfen werden. Also:
Delphi-Quellcode:
procedure StatusProc(buffer: Pointer; len, user: DWORD); stdcall;
begin
  // Ok, bass.dll hat neue Titel-Informationen bekommen
  // das sollte man wohl immer machen
  if (buffer <> nil) and (len = 0) then
      SendMessage(win, WM_INFO_UPDATE, 8, DWORD(PChar(buffer)))
  else
  begin
    // Daten zum Aufnehmen angekommen
    If UserWillAufnehmen then
    begin
      // Sicherheitsabfrage - ist ein FileStream vorhanden,um die Daten zu speichern?
      if assigned(FileStream) then
      begin
        if (buffer = nil) then
          FreeAndNil(FileStream); // Aufnahme beenden
        else
          FileStream.Write(buffer^, len); // Daten speichern
      end;
    end else
      // nichts machen, user will nicht aufnehmen.
  end;
end;
Das Erzeugen des FileStreams würde ich beim ButtonClick machen, also so:
Delphi-Quellcode:
procedure TForm1.ButtonStartAufnahmeClick(Sender: TObject);
begin
  UserWillAufnehmen := True;
  FileStream := TFileStream.Create ... // usw., Zeug aus der StopRec
end;
Und beim Stoppen dann in etwa sowas:
Delphi-Quellcode:
procedure TForm1.ButtonStoppAufnahmeClick(Sender: TObject);
begin
  UserWillAufnehmen := False;
  FreeAndNil(FileStream);
end;
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat