Entwickler-Ecke
Dateizugriff - Hilfe! - Fehler: 'Ungültiges Symbol'
Schamese - Mo 06.11.06 18:39
Titel: Hilfe! - Fehler: 'Ungültiges Symbol'
Hi.
Ich haben folgenden Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| function LoadIconFromRessourceName(RessourceName: string): TIcon; begin Result := TIcon.Create; Extract(RessourceName, '\qwertz.ico'); Result.LoadFromFile('\qwertz.ico'); DeleteFile('\qwertz.ico'); end; |
die Methode Extract:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| function Extract(Resourcename, FileName: string): Boolean; var MyRessource: TResourceStream; begin Result := True; try MyRessource := TResourceStream.Create(hInstance, Resourcename, 'RT_RCDATA'); try MyRessource.SaveToFile(Filename); finally MyRessource.Free; end; except on E: Exception do begin Result := False; ShowMessage(E.Message); end; end; end; |
In der Methode LoadIconFromRessourceName kommt bei Result.LoadFromFile('..'); der Fehler 'Ungültiges Symbol' vom Typ EInvalidGraphic.
Was mache Ich Falsch?
PS: Selbe Frage bei
http://www.entwickler-forum.deModeriert von
Christian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mo 06.11.2006 um 18:41
jakobwenzel - Mo 06.11.06 18:54
Haste mal geguckt, ob eine Datei erzeugt wurde, und ob da ein gültiges Icon drin is?
Schamese - Mo 06.11.06 19:02
Ich hab die Datei per Editor in die Exe Geladen, die extrahierte Symboldatei ist also Gültig.
jakobwenzel - Mo 06.11.06 19:24
Nur weil die Datei in der Exe höchstwahrscheinlich gültig ist, muss die extrahierte Datei nicht auch glütig sein. :roll:
Hast du die mit dem Programm extrahierte Datei geprüft, ja oder nein?
Schamese - Di 07.11.06 18:32
ja, Hab ich.
Zitat: |
Ich hab die Datei per Editor in die Exe Geladen, die extrahierte Symboldatei ist also Gültig. |
Damit meinte ich, dass ich die Datei
nach dem Extrahieren nochmal zum Test in Die Exe geladen habe.
MrSaint - Di 07.11.06 20:15
Dir ist schon bewusst, dass das '\' vor 'qwertz.ico' auf den Laufwerksroot zugreift und nicht auf dein aktuelles Verzeichnis? Solche Sachen sollten normalerweise in ein Temp-Verzeichnis, da ist auch sichergestellt, dass man Schreibrechte hat etc.
Die Datei extrahiert er korrekt (eben wegen Schreibrechten etc.)?
Schamese hat folgendes geschrieben: |
Damit meinte ich, dass ich die Datei nach dem Extrahieren nochmal zum Test in Die Exe geladen habe. |
Wie? Normalerweise sollte das einmal zur Compiletime vom Delphi-Compiler (oder Linker?) erledigt werden und das musst du normalerweise nicht per Hand machen!
MrSaint
Schamese - Mi 08.11.06 17:17
den Pfad habe ich nur als BSP eingesetzt und ich will je nach dem mit welchem parameter dass programm gestartet wurde, das icon der form Ändern:
Parameter: -blue - Blaues Icon
-red - Rotes Icon
etc.
Schamese - Di 12.12.06 20:38
Hat sich inzwischen erledigt.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!