Wczytywanie pliku

Odpowiedz Nowy wątek
KAMYK
2004-02-01 15:46
KAMYK
0

Czesc
Moze najpierw dokładnie wyjasnie o co chodzi:
Po dokonaniiu odpowiedniego wpisu w rejestrze systemu klikam na plik np z rozszerzeniem ".cos" i otwiera mi sie program z komponentem MEMO . Jak zrobic zeby juz na starcie programu wpisała mi zawartoosc tego pliku do memo??? Jak pobrac nazwe (sciezke dostepu) tego pliku z rozszerzeniem .cos?????????

z gory dzieki
pozd.

Pozostało 580 znaków

2004-02-01 16:10

Rejestracja: 16 lat temu

Ostatnio: 3 lata temu

0

Jeżeli otwierasz plik klikając go podwójnie, to zapewne w rejestrze masz wpisane jako akcję domyślną "TwójProgram.exe %s" (czy tam %1 :)) - wtedy nazwa pliku wraz ze ścieżką jest podana do programu jako parametr. Masz ją pod ParamStr(1);.


just me... ikari...
<url>blog.ikari.pl</url>

Pozostało 580 znaków

2004-02-01 16:10

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

Wtedy twój program otwiera się z parametrem...

twojprogram.exe parametr

Parametrem jest ściężka do pliku otwieranego.. Informacja ta jest przechowywana w "ParamStr(1)" .. ale jeśl któryś z katalogów w scieżce do pliku otwieranego zawiera chociaż jedną spację, to na Windowsie 9.x .. jest to odczytywane jak drugi parametr.. więc bezpieczniej jest zrobić tak:

// Sprawdzenie czy otworzono plik
  Prm := '';
  if (ParamStr(1) <> '') then
  begin
    i := 1;
    repeat
      if ParamStr(i) <> '' then Prm := Prm + ParamStr(i);
      i := i + 1;
      if ParamStr(i+1) <> '' then Prm := Prm + ' ';
    until ParamStr(i) = '';

Teraz zmienna Prm typu String zawiera ściezke do pliku otwieranego, który normalnie wczytujesz do Memo np. przez LoadFromFile(Prm) ..

W/w procedure można dać w OnCreate formy..


Pozostało 580 znaków

2004-02-01 16:20

Rejestracja: 17 lat temu

Ostatnio: 4 miesiące temu

0

.. ale jeśl któryś z katalogów w scieżce do pliku otwieranego zawiera chociaż jedną spację, to na Windowsie 9.x .. jest to odczytywane jak drugi parametr.. więc bezpieczniej jest zrobić tak:

na pewno tylko na 9.x bo mi się wydaje że na XP także,
może najbezpieczniej dać w rejestrze program.exe "%1" i jest git...


Pozostało 580 znaków

2004-02-01 18:08

Rejestracja: 17 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Kielce

0

w windowsie 95 jak w rejestrze było "%1" to nie było problemów, poza tym jak uuchamiany był program z konsoli to ludzie powinni wpisywac ścieżkę w """" i działa bez żadnych petelek (przynajmniej na wszystkich systemach na których próbowałem takich numerów (czyli: Win 95 OSR1, Win 95 OSR2, Win 98, Win 98SE, Win ME, Win 2000 Pro, Win XP pro))


HAKGER - 50% Complete

Pozostało 580 znaków

2004-02-01 19:03

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

Tu nie chodzi o sprawy rejestru, a co jeśli ktoś weźnie PPM i "otwórz za pomocą", następnie wybierze nasz program.. - zatem bezpieczniej jest dać moją procedurę "łączenia parametrów"...


Pozostało 580 znaków

Anonim
2004-02-01 19:11
Anonim
0

dzieki
dopisałem cudzusłów tzn "%1" i działa tylko z ParamStr(1) ; :)

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0