[Delphi] Odstranění PDOXUSRS.LCK bez restartu PC

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod Fantom007 7. 3. 2018 14:16

Omlouvám se, že otravuji s prehistorií :roll:. Zákazník je jinak spokojen s fungováním programu, ale při síťovém přístupu zobrazovacích programů k databázi řízené prostřednictvím BDE se zhruba jednou za tři až pět dní vyskytne chyba přístupu k databázi. Pokud se zkoušel restart PC s databázemi, vše zase šlapalo OK (program si po startu případné lck soubory sám vymaže). Jenže to je ten problém - na tomtéž serveru běží i jiná podniková agenda a navíc je administrován ze zahraničí, takže restart není možný (snad jen občas v noci). Výměna za novější databázový systém není možná :pozor (zákazník nechce nic měnit, "jen" vyřešit tuhle "chybku"). Kromě odpovědí doporučujících nahradit BDE ani nečekám jiné řešící daný problém, ale přesto se pro jistotu ptám: existuje nějaký způsob odstranění souboru Pdoxusrs.lck (který způsobuje chybu přístupu k databázi a samozřejmě nejde smazat) bez restartu PC :?: (nějaké shození a nahození nějaké služby, zrušení a obnovení sdílení adresáře s databázemi, dočasné přejmenování nějaké dll v adresáři s BDE, či jinou šígrošádu? - jen fantazíruju, už nevím, co by pomohlo) Systém si zřejmě stále myslí, že je někdo připojen k databázi po síti, i když se na ni už dávno nikdo nedívá. Ale vše nasvědčuje tomu, že uživatelé uzavírají program regulérně a jejich PC nepadá, takže důvod vytvoření je záhada. Kdyby někdo náhodou znal fintu, tak sem s ní (ale v tomto případě jsem skeptický).
Fantom007
Junior

Odeslat příspěvekod JanFiala 7. 3. 2018 14:44

Ukončit aplikaci, která používá BDE (případně sestřelit proces) a lck soubor smazat.
Co můžeš udělat dnes, odlož na včerejšek
JanFiala
Expert
Uživatelský avatar

Odeslat příspěvekod Fantom007 8. 3. 2018 13:10

Jenže při obhlídce na místě jsem zkontroloval, že všechny síťové aplikace jsou řádně ukončeny (nejsou ani v seznamu běžících procesů). Z nějaké příčiny (jak jsem již psal) si systém/BDE zřejmě stále myslí, že je někdo připojen k databázi po síti, i když všechny aplikace a procesy, které by se na ni mohly koukat, jsou už dávno ukončeny. A soubor lck smazat nejde a nejde.
Trochu mi to připomíná problém, který se u nás ve firmě občas stane, když někdo edituje Excelem (který má nainstalován na svém PC) nějaký soubor na síťovém serveru a ten Excel se mu z nějakého důvodu zasekne. K souboru se už nikdo nedostane, dokud se server (kde je soubor umístěn) nerestartuje (restart PC člověka, který soubor editoval, nepomůže). Systém si myslí, že je soubor stále otevřen.
Fantom007
Junior

Odeslat příspěvekod JanFiala 8. 3. 2018 20:23

Zkus použít Unlocker nebo podobnou utilitku, která ti řekne, co to blokuje a umí to i "odblokovat"
Co můžeš udělat dnes, odlož na včerejšek
JanFiala
Expert
Uživatelský avatar


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků