uzamčení soouboru?   zodpovězená otázka

VB.NET

Je nějaký způsob jak zjistit zda konkrétní soubor nepoužívá jiná aplikace? A způsob jak si vynutit přístup k souboru?

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

Můžete zkusit soubor otevřít a odchytit výjimku. Když aplikací otevřete soubor pro exkluzivní použití, vytvoří se v systému handle na ten soubor. Co jsem se dozvěděl, lze přes tyto handles iterovat a to by mohl být a) další způsob jak detekovat otevření souboru (bez pomalých try-catch bloků) a b) pravděpodobně i způsob jak jiné aplikaci soubor násilně vzít. Nemůžu to tvrdit s jistotou, nikdy jsem takovou funkci neviděl, ale věřím, že to možné bude. To už se to ale bavíme o unmanaged řešeních na úrovni Windows API.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Při otevírání souborového streamu máte obvykle možnost specifikovat, co s ním můžou ostatní procesy provádět (zapisovat i číst, pouze číst, nebo vůbec nic).

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Pokud chcete vytvořit aplikaci, která to dovede, pak neporadím, ale k obecné otázce zda to jde, je odpověď jednoznačně ANO. Zbývá tedy odpověď na otázku v čem a jak anebo čím.

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