Einzelnen Beitrag anzeigen

tinibeenie

Registriert seit: 5. Feb 2005
Ort: Barsbüttel
34 Beiträge
 
Delphi XE6 Professional
 
#1

String -> PAnsiChar funktioniert nicht

  Alt 4. Jul 2005, 12:12
Hallo!

Nach dem Tutorial http://www.delphipraxis.net/internal...ect.php?t=8681 habe ich versucht, einen Sound-Rekorder zu programmieren. Es hat auch alles so weit geklappt, aber ich fand es nicht so schön, dass man beim Speichern mit folgender Anweisung den Dateinamen nicht selber bestimmen kann:
mciSendString('SAVE mySound "c:\datei.wav"',nil,0,Handle); Also hab ich mir gedacht, dass ich den Dateinamen über eine Dialogbox eingeben lasse. Daraufhin hab ich aber die Fehlermeldung [Fehler] Aufnahme1.pas(185): E2010 Inkompatible Typen: 'string' und 'PAnsiChar' bekommen.
Irgendwie bekomm ich die Fehlermeldung nicht weg . Hab's schon mit verschiedenen Code-Schnipseln, die ich hier im Forum gefunden habe, probiert, aber ich bekomm immer wieder dieselbe Fehlermeldung vom Anfang.

Hier ist erstmal meine Speichern-Prozedur:

Delphi-Quellcode:
procedure TForm1.JvTransparentButton6Click(Sender: TObject);
var dateiname_string:string;
    dateiname_char:PChar;
begin
  dateiname_string:=InputBox('Speichern','Bitte den Namen des Tracks eingeben:','');
  //Umwandeln des Dateinamens von String zu PAnsiChar
  dateiname_char := PChar(dateiname_string); //hab mit diesen 3 Zeilen
  dateiname_char := @dateiname_string[1]; //unterschiedliche Kombinationen
  dateiname_char := Pointer(dateiname_string); //ausprobiert
  //Speichern von mySound
  mciSendString('SAVE mySound "c:\'+dateiname_char+'.wav"',nil,0,Handle);
  //Aufnahmegerät schließen
  mciSendString('CLOSE mySound',nil,0,Handle);
end;
Kann man nach diesem Schema überhaupt den Dateinamen ändern oder muss ich das anders angehen (z.B. mit Save-Dialog)?
  Mit Zitat antworten Zitat