Page 1 of 1

ascii frage

Posted: 23 Jun 2020, 15:35
by effel
hallo,

Code: Select all

FileURL := FileURL( "¶" )
;FileURL := FileURL( "öäüßÖÄÜ" )
;FileURL := FileURL( "Sülzgürtel 41" )
;FileURL := FileURL( "ßüäöq_-#?=&%$§!" )
FileURL := StrReplace(FileURL, "¶", "%B6")
ClipBoard := FileURL
msgbox % FileURL

FileURL( File ) {                                                ; By SKAN on D1CA @ goo.gl/UqXL6n
Local v, INTERNET_MAX_URL_LENGTH := 2048   
  VarSetCapacity(v,4200,0)
  DllCall( "Shlwapi.dll" ( SubStr(File,1,5)="file:" ? "\PathCreateFromUrl" : "\UrlCreateFromPath" )
         , "Str",File, "Str",v, "UIntP",INTERNET_MAX_URL_LENGTH, "UInt",0 )
Return v
}
diese ascii Funktion von SKAN nutze ich grade.
"b" --->> "%62"
geht das auch umgedreht? hat jemand eine solche Funktion zur Hand?
von "%62" --->> "b"

und dann versuche ich vergeblich aus der Antwort der Funktion den String "file:" zu entfernen, das brauche ich für meinen zweck nicht.
2020-06-23 at 22.15.29.jpeg
2020-06-23 at 22.15.29.jpeg (6.03 KiB) Viewed 1975 times
ich kann es natürlich auch wegReplacen, aber vielleicht gehts auch ohne :bravo:

und noch eine frage ;)
in einigen urls habe ich den
ascii "¶" = "%B6" was ist das? {ENTER}?
den finde ich nur in der url bei einer Webseite, sonst nicht.
Und er ist auch nicht in den Tabellen die ich fand

Code: Select all

   2 3 4 5 6 7       
 -------------      
0:   0 @ P ` p     
1: ! 1 A Q a q
2: " 2 B R b r
3: # 3 C S c s
4: $ 4 D T d t
5: % 5 E U e u
6: & 6 F V f v
7: 2 7 G W g w
8: ( 8 H X h x
9: ) 9 I Y i y
A: * : J Z j z
B: + ; K [ k {
C: ;",";< L \ l |
D: - = M ] m }
E: . > N ^ n ~
F: / ? O _ o DEL




so genug gequengelt, ich wünsche einen schönen Abend, bleibt gesund

Re: ascii frage

Posted: 24 Jun 2020, 04:46
by just me
Moin,

die Funktion von SKAN ruft Windows API Funktionen auf, die sich um das Konvertieren von Dateipfaden zu gültigen URLs und umgekehrt kümmern. Welchen konkreten Zweck erfüllen sie für DIch? Das Zeichen b muss dabei nicht nach %62 übersetzt werden. %B6 ist die Kodierung für das ANSI-Absatz-Symbol: MsgBox, % Chr(0xB6).

Re: ascii frage

Posted: 24 Jun 2020, 10:31
by BoBo
SKAN nutzt zur Ermittlung des Dateinamens SubStr(), als auch den ternary operator als Schalter um die Pfadangaben zu rochieren. Es muss dort also lediglich die Stringangabe "file:" entfernt werden.

Code: Select all

 DllCall( "Shlwapi.dll" ( SubStr(File,1,5)="file:" ? "\PathCreateFromUrl" : "\UrlCreateFromPath" )
         , "Str",File, "Str",v, "UIntP",INTERNET_MAX_URL_LENGTH, "UInt",0 )

Re: ascii frage

Posted: 24 Jun 2020, 11:30
by effel
Hallo just me, danke das habe ich gesucht MsgBox, % Chr(0xB6)

hallo bobo, auch dir mein Dank,
"file:" war das gesuchte, ich muss beim b) du frikelst ewig am workaround herum (Methode: "Aus Schaden wird... noch ein wenig mehr Mut zeigen, dann hätte Methode B funktioniert.

An die "" habe ich nicht gedacht :ugeek:

Re: ascii frage

Posted: 24 Jun 2020, 13:37
by BoBo
Der Form halber sollte noch gesagt werden, das es sich nicht um ASCII-conversion handelt, sondern um HTML de-/encoding.