![]() |
"Operator not applicable to this operand type"
Hi,
irgendwie bekomme ich bei einer Endungsüberprüfung vor dem Speichern einer Playlist den Fehler "Operator not applicable to this operand type" :( Hier der Code (in einem anderen Programm läuft der Code):
Delphi-Quellcode:
procedure TfrmMain.xiSaveClick(Sender: TObject);
begin if saveP.Execute then begin if (ExtractFileExt(saveP.FileName) = '.asx') or if (ExtractFileExt(saveP.FileName) = '.m3u') then begin if saveP.FilterIndex = 1 then begin SaveASX(saveP.FileName); end; if saveP.FilterIndex = 2 then begin SaveM3U(saveP.FileName); end; end else begin if saveP.FilterIndex = 1 then begin saveP.FileName := saveP.FileName + '.asx'; SaveASX(saveP.FileName); end; if saveP.FilterIndex = 2 then begin saveP.FileName := saveP.FileName + '.m3u'; SaveM3U(saveP.FileName); end; end; // Diese Zeile wird bei F9 rot markiert end; end; |
Re: "Operator not applicable to this operand type"
Hmm, kann ich dir so direkt leider auch nicht sagen, aber mir ist etwas anderes aufgefallen:
Delphi-Quellcode:
Was ist, wenn ich als FileName schon "MyPlaylist.m3u" angegeben habe? SChau dir mal ChangeFileExt an, das dürfte etwas "sicherer" sein ;-)
saveP.FileName := saveP.FileName + '.m3u';
|
Re: "Operator not applicable to this operand type"
Naja, wenn die Extensions schon m3u/asx sind, wird der erste Fall angewandt. Allerdings funktioniert das nur, wenn die Endungen klein geschrieben sind...
Aber gibt es nicht eine Eigenschaft von so einem SaveDialog, dass der die passenden Endungen erzwingt? Dann kann man sich das ganze geprüfe sparen. Auch würde ich nicht den FilterIndex checken, sondern das eher über die Extension machen - denn FilterIndex=1 ist nicht gerade leicht lesbar und wenn du einen zusätzlichen Filter einbaust, kann es sein, dass du mit diesen Zahlen durcheinander kommst und solche Fehler sind u.U. nicht leicht zu finden. |
Re: "Operator not applicable to this operand type"
Zitat:
|
Re: "Operator not applicable to this operand type"
Danke, mit ChangeFileExt habe ich es hinbekommen.
@Jelly: Ahh, der rote Kasten hat keine Sommerferien :mrgreen: Ok, danke, aber ChangeFileExt ist besser. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:57 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 by Thomas Breitkreuz