Avatar billede sion Nybegynder
19. juli 2002 - 20:15 Der er 5 kommentarer og
1 løsning

DOS-sti til Win-sti

Jeg har lavet et budget-program der automatisk assoiere sig med en bestemt fil-type. Menningen er så at programmet skal åbne og filen indlæses når en fil af den angivne filtype åbnes.
Mit problem består bare i at når man åbner filtypen så returnere Command-funktionen en DOS-sti (hvor hver mappenavn højest fylder 8 tegn) i stedet for en Windows-sti. Derfor kan jeg ikke åbne filen med mit program. Hvordan kan det gøres så jeg kan læse filen?

-Sion
Avatar billede joern Nybegynder
20. juli 2002 - 01:07 #1
Hej sion.

Hvis du vil have hjælp af mig må du sætte den relevante kode ind her.  Jeg garanterer dog ikke.

M.v.h.  Jørn
Avatar billede sion Nybegynder
20. juli 2002 - 02:46 #2
Endelig lidt respons...
Der er egentligt ikke så meget kode, jeg har brugt eksemplet på adressen
http://www.mvps.org/vbnet/index.html?code/reg/association.htm til at associere en fil-type med mit program (.bud) og så brugt en simpel "Open FilSti For Input As inFile"-funktion for at læse fra filen. Problemmet er bare at når jeg åbner filtypen så retunere Command funktionen en sti hvor hver mappenavn maks må være 8 tegn og de resterende tegn bliver afløst af "~1". Man næsten alle windowsprogrammer benytter sig af at associere sig med filtyper, så der må jo være en måde at få retuneret en windows-sti (eller læse fra en fil med DOS-stiformat). Ved ikke om det er klarere beskrevet -Sion
Avatar billede joern Nybegynder
20. juli 2002 - 11:05 #3
Hej Sion.

For mig er det stadig uklart.  Det du kalder at 'åbne en fil' med ekstension 'bud' - er det at klikke på den i stifinder eller et andet filstyringsprogram?

Jeg bruger VB5 og kender ikke til hvad VB6 og -.net kan indeholde, men ordet 'infile' er ikke et reserveret ord i VB5.  Men det er jo nok ikke dér dit problem ligger.

Når jeg lader et program (mit VB-program) åbne en fil skriver jeg:

Open filsti & "\filename" for Input as #1
  Do While EOF(1) = False  ....

For at skrive:

Open filsti & "\filename" for Output...

Senere i dag prøver jeg at lave et lille eksemplel for at se om jeg har lignende problem.
Jeg har i øvrigt for et par år siden løst en opgave for en kunde, der modtog filer med navne der kunne indeholde blanktegn, flere punktummer, æ, ø, og å samt bindestreger.  Denne kode kan jeg evt. sende som zip-fil.  Programmet har jeg kaldt KickStart, og dets funktion var at gøre filerne tilgængelige for ældre 16-bit programmer, der jo IKKE kan håndtere mappe- eller filnavne over 8 tegn.

M.v.h.  Jørn
Avatar billede sion Nybegynder
21. juli 2002 - 17:17 #4
Hej Jørn.

"For mig er det stadig uklart.  Det du kalder at 'åbne en fil' med ekstension 'bud' - er det at klikke på den i stifinder eller et andet filstyringsprogram?" --> Ja, det er bare at åbne en .bud-fil i windows.


"...men ordet 'infile' er ikke et reserveret ord i VB5" --> Det må du undskylde, jeg var lidt for hurtig til at klippe & kopiere koden ind 'inFile' er bare variabel for at finde et frit frinummer.
Kode: inFile  = FreeFile

Hmm, programmet "KickStart" lyder til at være noget af det jeg kikker efter, men der BURDE da være en eller anden nem måde at gøre det på? Alle der har associeret filtyper med deres programmer, burde have været ude for samme problem... ellers også laver jeg bare et eller andet helt forkert.
Jeg vil meget gerne tage et kik på dit program, og hvis du er villig til at sende det til mig er min mail anders_nis@hotmail.com (det er den nu også alligevel :-)
På forhånd tak - Sion
Avatar billede joern Nybegynder
21. juli 2002 - 18:24 #5
Mail med zip-pakke med projektet er sendt.

M.v.h.  Jørn
Avatar billede sion Nybegynder
06. oktober 2002 - 11:15 #6
Ingen løsning - lukker spørgsmålet...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester