Thema: Delphi Das Handle ist ungültig

Einzelnen Beitrag anzeigen

Benutzerbild von Dalai
Dalai
Online

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#82

AW: Das Handle ist ungültig

  Alt 6. Mai 2018, 18:56
@HolgerX:
Schau mal auf die von Emil geposteten Bilder - es geht nicht um Slash und Backslash sondern um ein völlig anderes Zeichen auf dem koreanischen System.

Deine Funktion den richtigen Pfad zurück gibt vorausgesetzt er existiert in der Realität.
Richtig, wenn auch nicht den Pfad sondern den Inhalt des Ressourcen-Strings.

Zitat:
Nun! Die kann ich aber für das Icon nicht verwenden.
Soweit klar.

Zitat:
Also nutze ich jetzt meine Extrakt Routine mit %SystemRoot% und ein andere hat aber %Windir% was passiert?
Richtig das Icon wird falsch angezeigt oder hast du das nicht gesehen auf dem Screenshot?
Hab ich nicht drauf geachtet, weil ich annahm, dass du den von mit vorgeschlagenen Weg mal ausprobierst. Dann ist es nämlich völlig egal, ob, welche und wieviele Umgebungsvariablen in dem indirekten Ressourcen-String enthalten sind - ExpandEnvironmentStrings expandiert einfach alle. Anders ausgedrückt: StringReplace für Umgebungsvariablen ist eine dumme Idee.

Zitat:
Logisch darum geht es gar nicht sondern das es diese Funktion in den Uses nicht gibt. Langsam sollten die ihre Bibliotheken mal aktualisieren.
Nun, nicht alle Programmierumgebungen können ausnahmslos alle API-Funktionen deklarieren. Ich hab die Deklaration auch nur von den JEDIs geguttenbergt, wenn ich mich recht erinnere. Und letztlich kann man eine Deklaration einer API-Funktion auch selber schreiben, wenn es nirgends eine gibt, auch wenn das unter Umständen manchmal etwas Hirnschmalz erfordert. Keine Ahnung, nach welchen Kriterien Emba die Units mit Leben füllt, und entscheiden, ob und welche Funktionen aufgenommen werden oder nicht. Ja, es wäre schön, wenn (fast) alles vordefiniert wäre, aber weil ich weiß, dass das einfach nicht möglich ist, rege ich mich da nicht auf.

Grüße
Dalai

Geändert von Dalai ( 6. Mai 2018 um 18:58 Uhr)
  Mit Zitat antworten Zitat