![]() |
Access Violation bei Dateizugriff Windows 7
Hallo,
bei folgendem ganz einfachen Code bekomme ich immer eine Access Violation. Fragt mich nicht warum. :gruebel: Ich habe Windows 7 und benutze Delphi 7. Ich habe schon die ganze Zeit Ärger bei Windows 7 mit dem Standard-Admin-Account, mit dem sich z.T. der Schreibschutz von Verzeichnissen nicht entfernen lässt. Ob es was mit Windows und den Nutzerrechten zu tun hat? Allerdings hab ich die kompilierte Anwendung auch schon als Administrator ausgeführt, hilft nix... Die Datei ist nicht schreibgeschützt!
Delphi-Quellcode:
Wer die Jedi-Komponente nicht kennt: Ist ne Komponente zum Schreiben von ID3-Tags in MP3-Dateien. Schätze mal, er macht zunächst nichts weiter, als die Datei zu öffnen...
id3v2 := TJvID3v2.Create(Form1);
id3v2.FileName := 'C:\Users\Johannes\Desktop\bt123.mp3'; id3v2.Open; Wäre wirklich dankbar für Hilfe!!! Gruß Johannes |
Re: Access Violation bei Dateizugriff Windows 7
Wo genau kommt die Exception?
Stimmt der Pfad zur Datei? Was passiert, wenn du nil beim Konstruktor angibst? Hast du mal eine gescheite Fehlerbehandlung eingebaut, damit du mehr Informationen bekommst? |
Re: Access Violation bei Dateizugriff Windows 7
Weil du soviel von Problemen mit Dateizugriffen schreibst, frage ich mal sicherheitshalber nach: Meinst du wirklich eine "Access violation" als eine Zugriffsverletzung im Speicher oder meinst du eher die Windows-Meldung "Zugriff verweigert"/"Access denied"?
Bis denn Bommel |
Re: Access Violation bei Dateizugriff Windows 7
Ich benutze die Kompos auch und das geht auch unter Win7 auch einwandfrei!
Benutzt du die denn richtig? Du musst den Konstruktor nicht explizit aufrufen, sondern kannst sie direkt nach Deklaration benutzen:
Delphi-Quellcode:
uses
//JCL/JVCL-Komponenten JvID3v2Types, JvID3v2Base, JvID3v2, JvID3v1, JvComponentBase; var JvID3v21: TJvID3v2; begin JvId3v21.FileName := lFilename.caption; JvId3v21.Open; end; |
Re: Access Violation bei Dateizugriff Windows 7
Hi,
Zitat:
Gruß Assertor |
Re: Access Violation bei Dateizugriff Windows 7
Jupp, genauso ist es in den offiziellen Jedi-Demos zu den Komponenten gemacht! (JvID3v1Demo.dpr+JvID3v2Demo.dpr) :mrgreen:
(Habe gerade extra nochmal nachgeguckt, damit ich hier kein Unsinn behaupte) |
Re: Access Violation bei Dateizugriff Windows 7
Liste der Anhänge anzeigen (Anzahl: 1)
Danke ersmtal für die Antworten!!
Hat aber leider nicht funktioniert... Mit Id3v1 geht alles wunderbar! Nur mit der Version 2 Komponente halt nicht. Und ich muss Tags schreiben, die es in ID3v1 nicht gibt... Im Anhang mal die Fehlermeldung. Ist wohl doch nichts mit Dateizugriff dann?! Sorry, hab nur von Programmiersprachen ne kleine Ahnung, aber vom "drumherum" nicht :oops: edit: Die Demo (JvID3v2Demo.dpr) bekommt den gleichen Fehler angezeigt beim Dateizugriff :gruebel: |
Re: Access Violation bei Dateizugriff Windows 7
Ist in dem MP3-File denn ein ID3v2-Tag drin oder ist das vielleicht korrupt?
Ich würde die Open-Methode mal in einen try..except-Block einschließen... |
Re: Access Violation bei Dateizugriff Windows 7
Halo,
du hast doch den Quellcode, geh doch mal mit F7 rein. Was passiert, wenn du einen anderen Pfad nimmst ?
Delphi-Quellcode:
Und noch mal die Frage, wann genau kommt die Zugriffsverletzung.
id3v2 := TJvID3v2.Create(NIL);
id3v2.FileName := 'C:\Temp\bt123.mp3'; id3v2.Open; Zum "Ohne Create" nutzen. Das geht nur, wenn die Komponente aufs Form gezogen wurde, was anderes kann ich mir nicht vorstellen. Heiko |
Re: Access Violation bei Dateizugriff Windows 7
Jau, hast natürlich Recht: ich habe die aufs Form gezogen!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:31 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