Menu souboru   otázka

VB.NET, WinForms

Dobrý den, nevěděl by někdo, jak získat vše potřebné pro vytvoření

kontextového menu pro soubor, aby vypadalo jako "Otevřít v programu".

Možná by postačilo vyvolat dialog pro výběr programu, kde jsou vidět

nejprve doporučené programy a potom další dostupné programy...

Lze nějak vyvolat tento dialog pro výběr programu ?

Nebo lze nějak vyvolat celé výchozí (vestavěné) menu pro soubor ?

Cesta k výchozímu asociovanému programu lze vyčíst z registru ClassesRoot.

Lze se nějak dopídit k těm dalším doporučeným programům ?

Příkaz open každé přípony je kdesi vícekrát pro další varianty mimo tu výchozí?

Spustit asociovaný program lze pomocí Process.Start, lze také přejít k souboru

přímo v exploreru : Process.Start("explorer.exe", "/select,""" & file & """")

Totéž umí Win32 API funkce ShellExecuteEx, s jejíž pomocí lze také vyvolat

Vlastnosti souboru. Na jiný způsob vyvolání Vlastností jsem nanarazil.

Lze vyvolat Vlastnosti (file properties) jiným způsobem ?

Hezký podvečer a předem děkuji za případnou odezvu.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Něco jsem konečně našel...

Vyvolání dialogu otevřít v programu pomocí ShellExecuteEx :

http://www.codeproject.com/Articles/1310...

Případně vyvolání dialogu :

Process.Start("RUNDLL32.EXE", "shell32.dll,OpenAs_RunDLL " & FileFullPath)

Ohledně získání všech programů vhodných pro otevření stále tápu...

Např. pro .bmp by mohlo být HKEY_CLASSES_ROOT\.bmp podklíč OpenWithList

Z PrgIds nějak získat názvy programů potřebné pro vytvoření položek menu?

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback