Forkorte sti til fil

Tags:    delphi

Jeg ved ikke lige hvad det hedder, men her er hvad jeg har brug for hjælp til. Jeg skal bruge en sti til en fil som parameter til et program. Lad os lige lege at stien er C:\\Lyd og musik\\test.wav
Når jeg så giver det som parameter vil programmet det bliver åbnet med (i dette tilfælde en mediaplayer) klage over at den ikke kan åbne C:\\Lyd. Det er fordi alt efter mellemrummet tager den ikke med. Hvad kan jeg gøre med stien for at få programmet til at åbne filen??

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ U? P L+ E? W++ N? o? K- w
O? M? V? PS PE? Y? PGP++ t 5? X+ R tv+ b+ DI? D+
G e-- h! !r y--
------END GEEK CODE BLOCK------



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Jeg ved ikke lige hvad det hedder, men her er hvad jeg har brug for hjælp til. Jeg skal bruge en sti til en fil som parameter til et program. Lad os lige lege at stien er C:\\Lyd og musik\\test.wav
Når jeg så giver det som parameter vil programmet det bliver åbnet med (i dette tilfælde en mediaplayer) klage over at den ikke kan åbne C:\\Lyd. Det er fordi alt efter mellemrummet tager den ikke med. Hvad kan jeg gøre med stien for at få programmet til at åbne filen??

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ U? P L+ E? W++ N? o? K- w
O? M? V? PS PE? Y? PGP++ t 5? X+ R tv+ b+ DI? D+
G e-- h! !r y--
------END GEEK CODE BLOCK------
'


Kender ikke meget til Delphi, men umiddelbart vil jeg tro at du skal quote stien med " eller '.


Mvh. Emilbp



Det gør jeg skam også. Prøver at forklare det sådan her


C:\\Programmer\\Winamp\\winamp.exe C:\\Lyd og musik\\test.wav
Jeg vil åbne winamp, med test.wav som parameter


Winamp åbne...tjekker if parametre...finder C:\\Lyd og musik\\test.wav...deler det op således:

parameter 1: C:\\Lyd
parameter 2: og
parameter 3: musik\\test.wav

Skal altså derfor finde en måde at få hele stien til at være i et "ord"

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ U? P L+ E? W++ N? o? K- w
O? M? V? PS PE? Y? PGP++ t 5? X+ R tv+ b+ DI? D+
G e-- h! !r y--
------END GEEK CODE BLOCK------

[Redigeret d. 29/09-05 17:19:19 af Jonas (Decko)]



I C++ ville man kunne bruge GetShortPathName() til at få den "korte" udgave af fil/sti navn, denne er altid uden mellemrum.

Men du burde kunne kalde:
C:\\Programmer\\Winamp\\winamp.exe "C:\\Lyd og musik\\test.wav"



Fandt den jeg ledte efter.

ExtractShortPathName(); Så det var tæt på Bertel :D

Ellers tak for hjælpen ;)


-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ U? P L+ E? W++ N? o? K- w
O? M? V? PS PE? Y? PGP++ t 5? X+ R tv+ b+ DI? D+
G e-- h! !r y--
------END GEEK CODE BLOCK------

[Redigeret d. 29/09-05 20:45:02 af Jonas (Decko)]



t