AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Internet Filename (URL) to Windowsfilename
Thema durchsuchen
Ansicht
Themen-Optionen

Internet Filename (URL) to Windowsfilename

Ein Thema von woki · begonnen am 14. Apr 2004 · letzter Beitrag vom 15. Apr 2004
Antwort Antwort
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#1

Internet Filename (URL) to Windowsfilename

  Alt 14. Apr 2004, 10:44
Hi,

folgende Situation: Ich habe eine ActiveX Komponente im Internetexplorer, die den Filenamen eines im Explorer geladenen Bildes an eine Windowsanwendung übergibt,die dieses Bild dann laden soll.

Das Bild liegt auf der lokalen Platte.

Der übergebenen Filename ist in der Form:

file:///C:/Programme/Internet%20Explorer/kontak_01.jpg,

damit kann Loadfromfile erstmal nichts anfangen. Die Konvertierung kann man zwar schnell selberschreiben, aber dabei kann man dann auch viele Dinge übersehen (Sonderzeichen etc.), dann knallts und man muß dann immer wieder nachbessern. Es muß doch aber eine API-Funktion geben, die das tut, und die habe ich bis jetzt nicht gefunden, falls sie zufällig jemand kennt,

vielen Dank.
woki
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: Internet Filename (URL) to Windowsfilename

  Alt 14. Apr 2004, 10:47
Das müsste evtl. mit [msdn]"InternetCanonicalizeUrl"[/msdn] zu machen sein.
[dp]"InternetCanonicalizeUrl"[/dp].
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#3

Re: Internet Filename (URL) to Windowsfilename

  Alt 14. Apr 2004, 12:23
Hi,

vielen Dank für den Hinweis, sieht erfolgversprechend aus.

Grüsse
Woki
  Mit Zitat antworten Zitat
Andreas L.
(Gast)

n/a Beiträge
 
#4

Re: Internet Filename (URL) to Windowsfilename

  Alt 14. Apr 2004, 12:38
Du musst doch nur file:/// wegschneiden, / in \ umwandeln und %20 in SPACE umwandeln.

Delphi-Quellcode:
var
file : string;
begin
file:=StringReplace('file://C:/hallo.txt', 'file:///', '',[rfReplaceAll]);
file:=StringReplace(file, '/', '\',[rfReplaceAll]);
file:=StringReplace(file, '%20', ' ',[rfReplaceAll]);
TObject.loadfromfile(file);
end;
Was soll denn da passieren?
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#5

Re: Internet Filename (URL) to Windowsfilename

  Alt 14. Apr 2004, 23:02
Zitat von onlinehome:
Du musst doch nur file:/// wegschneiden, / in \ umwandeln und %20 in SPACE umwandeln.

Delphi-Quellcode:
var
file : string;
begin
file:=StringReplace('file://C:/hallo.txt', 'file:///', '',[rfReplaceAll]);
file:=StringReplace(file, '/', '\',[rfReplaceAll]);
file:=StringReplace(file, '%20', ' ',[rfReplaceAll]);
TObject.loadfromfile(file);
end;
Was soll denn da passieren?
Worum wettest Du?
You lose.
Ich hatte das oben schon erklärt, aber nochmal ausführlicher:
Angenommen ich tue das so, wie du vorschlägst, mach die Software fertig, die geht raus zur Präsentation, zum erstenmal knallts, sobald jemand zu einer Bildurl mit Umlauten surft, die Software kommt mit einer diffusen Fehlermeldung zurück, vielleicht gar nicht zu mir, der Entwickler wühlt sich durch die Software, nur in der Softwaeentwicklung brennt noch Licht, flucht (was hat der Blödmann denn hier wieder gemacht, mußte er wieder basteln, wo es das in fertig und funktionierend schon gibt?...), und findet irgendwann das Problem, ergänzt jetzt die Umlaute, (hast du dir schonmal Gedanken darüber gemacht, was ein einziger unnötiger Turnaround kostet? auf der Liste der entbehrlichen Entwickler bekommt Dein Name ein paar Pluspunkte) und kannst Du mir sagen, was dann passiert, wenn die Sache in Paris, Moskau, Tokio oder Peking auf einem PC läuft? Wenn es eine vorgefertigte Funktion gibt, die es mir abnimmt, darüber nahczugrübeln, dann will ich mich damit gar nicht erst beschäftigen.
Du hast gerade an dieser winzig kleinen Stelle ein paar Tausend Euro Folgekosten produziert, bis alle Ergänzungen für alle Sprachen dann irgendwann durch sind, bei diesem winzigen Detail des Projektes.
Ich gehe deshalb so ausführlich darauf ein, weil Du, genau wie alle unsere Youngster hier, dir über solche Dinge ernsthaft Gedanken machen solltest, sobald Du mal Software nicht nur zum Spaß entwickelst.


Grüsse
Woki
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#6

Re: Internet Filename (URL) to Windowsfilename

  Alt 15. Apr 2004, 08:33
Zitat von onlinehome:
Du musst doch nur file:/// wegschneiden, / in \ umwandeln und %20 in SPACE umwandeln.
Zumindest die Zeichen wie %20 braucht man IMHO nicht mit StringReplace umbauen. Auch dafür gibt´s eine Funktion, bzw. einen "???_DECODE"-Parameter.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz