Strona: [  << <   1 2   > >>  ]  z  2     
Autor Temat: Jak rozpoznać rzszerzenie pliku ??
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004
Jak rozpoznać rzszerzenie pliku ??

Witam - tak jak w temacie

Powiedzmy że mam ścieżkę "C:\Windows\Notepad"

Jak pobrać rozszerzenie tego pliku ??

Oczywiście plik może być dowolny.


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

10-12-2004 17:29
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
kicaj




Typ: neutral
Postów: 271
Zarejestrowany: Aug 2003

Dla mnie to jest scierzka katalogu lub pliku bez rozszerzenia.
Jesli chcesz zeby bylo widac rozszerzenia kliknij Menu Widok->Opcje folderów... zakładka Widko i tam odznacz check'a Ukryj rozszerzenia plików znanych typów. Instrukcja do 9x
Tak ukrywa win
Lub wrzuc do formy kontrolke FileListBox ustaw i w kodzie:

File1.Pattern = "notepad.*"
File1.Path = "C:\windows"

For a = 0 To File1.ListCount - 1
b = File1.List(a)
'Tu masz wszytskie pliki notepad.*
Next a

10-12-2004 18:56
Pokaż profil kicaj  Wyślij email do kicaj        3914568
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Z tymi ustawieniami w Windowsie to lekko przesadziłeś

A dodawanie jakis kontrolek w zupełności odpada.

Mam poprostu scieżkę do pliku bez jego rozszerzenia

i za pomocą API (bo innej mozliwości nie widzę) chcę rozpoznać rozszerzenie - moze jakoś po typie pliku czy jakoś tak.


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 00:10
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
Knight Lore''FC




Typ: neutral
Postów: 240
Zarejestrowany: Jan 2003


Witam - tak jak w temacie
Powiedzmy że mam ścieżkę "C:\Windows\Notepad"
Jak pobrać rozszerzenie tego pliku ??
Oczywiście plik może być dowolny.


Przeciez ta sciezka nie mowi o jaki plik Ci chodzi...
Ta sciezka wskazuje na katalog Windows\Notepad

Jezeli zakladasz ze ostatni wpis ( po \ ) jest nazwa pliku to przy pomocy DIR dowiesz sie jakie sa pliki -> chcesz wiecej szczegolow czy wystarczy ?

11-12-2004 02:27
Pokaż profil Knight Lore  Wyślij email do Knight Lore        1065423
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

Mówiąc prościej - podana przez ciebie ścierzka nie wskazuje najprawdopodobniej na nic - ewentualnie na plik, który rozszerzenia nie posiada.


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 10:12
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

To kto mi wyjaśni takie dziwne zjawisko:

Podaję w funkcji "GetFileVersionInfo" ścieżkę do pliku bez jego rozszerzenia i funkcja zwaca mi prawidłowe informacje o pliku


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 11:02
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

Może poszukuje pliku, którego nazwa najbardziej przypomina szukaną?


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 11:29
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

To bardzo ciekawa ta funkcja


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 15:20
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

A co innego proponujesz? Bo ja innego pomysłu nie mam. Funkcja sama dopisuje sobie w rozszerzenie (w sumie niewiele ich ma do wyboru), albo szuka pliku o podobnej nazwie - jednak pewnie to pierwsze - jest szybsze, a w sumie niewiele ma rozszerzeń do sprawdzenia.
Bo c:\windows\notepad i c:\windows\notepad.exe to są dwa zupełnie inne pliki i prawidłowo działająca funkcja nie ma prawa wogóle "myśleć" o "notepad.exe", jeśli podano jej samo "notepad" - chyba, że robi którąś z powyższych rzeczy (a w przypadku akurat tej - to całkiem realne).


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 15:55
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

możliwe że dopisuje rozszerzenie i bada czy plik istnieje - nazwa pliku bez rozszerzenia jest pobierana z rejestru (moze to ma coś do rzeczy) - jakieś ukryte odwołanie


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 16:27
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

A gdzie ona jest w rejestrze?


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 16:43
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{64B8DC2B-E1A0-4CA4-B1BB-F12A18CCE83D}\0000

oczywiście ścieżka może się trochę róznić

Klucz "InstalledDisplayDrivers"


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 16:57
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

Jesteś pewien, że nie pomyliły ci się wątki - ten od karty graficznej z tym od pliku?


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 17:02
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Nie bo o rzszerzenie sterownika mi chodzi


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 17:13
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

No to raczej go stamtąd nie bierze . To jest funkcja do wszystkich programów, bibliotek itd. - nie tylko do sterowników .


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 17:40
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

nie rozumiesz mnie nazwę pobieram z tego klucz łączę z ścieżką do katalogu systemowego i zapodaję dopiero tą funkcję


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 17:51
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
marcin_an
Forumowicz




Typ: neutral
Postów: 1265
Zarejestrowany: Mar 2004

Ale jeśli nie ma rozszerzenia, to nadal funkcja skądś je musi brać.. ok, a tak wogóle, to o czym my mówimy?


_____________________________________________
Jedzonko dla Google'a:
Forum na temat Visual Basic, C, C++, Pascal, Programowanie, API, PHP, VBA, VB.NET, QBasic, VBScript, Komputery
Moja strona o wszystkim

11-12-2004 18:01
Pokaż profil marcin_an  Wyślij email do marcin_an   Odwiedź stronę marcin_an  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

też tak pomyślałem - przecież to nie na temat


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

11-12-2004 23:43
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
KDteam




Typ: neutral
Postów: 4
Zarejestrowany: Mar 2005

Function Rozszerzenie(ścieżka As String) As String
ścieżka = Dir(ścieżka & ".*"
For i = Len(ścieżka) To 1 Step -1
    If Mid(ścieżka, i, 1) = "." Then
        Rozszerzenie = Right(ścieżka, Len(ścieżka) - i)
        Exit Function
    End If
Next
End Function

[Post edytowany dnia 15-03-2005 18:28 przez KDteam]

15-03-2005 18:22
Pokaż profil KDteam  Wyślij email do KDteam   Odwiedź stronę KDteam       3181083
m-a-x



Typ: neutral
Postów: 366
Zarejestrowany: Jan 2003

lub krocej:

function ext(byval sciezka as string) as string
tbl=split( sciazka,"." )
ext=tbl(ubound(tbl)-1)
end function


aha tyle ze w przypadku braku rozszerzenia to funkcja zwroci całą scieżke - wystarczy zrobić tylko proste zabezpieczenie

[Post edytowany dnia 17-03-2005 10:04 przez m-a-x]


_____________________________________________

Problemem zazwyczaj nie jest brak osób znających odpowiedź a zadanie właściwego pytania!

17-03-2005 10:02
Pokaż profil m-a-x  Wyślij email do m-a-x   
Wszystkich odpowiedzi: 25 :: Maxymalnie na stronę: 20
Strona: [  << <   1 2   > >>  ]  z  2