/ / Určenie procesu, ktorý má zámok v súbore - vb.net, file-io, teamcity

Určenie, aký proces má zámok v súbore - vb.net, file-io, teamcity

Mám jednotkový test, ktorý funguje dobre lokálne, ale pri odovzdaní do servera servera TeamCity zlyhá s "Proces nemôže získať prístup k súboru, pretože ho používa iný proces."

  1. Skôr než urobím čokoľvek v teste Pri nastavení súboru skontrolujem existuje a pokúsi sa to odstrániť. Toto zlyhá pri rovnakej chybe ako je uvedené vyššie
  2. Pri zapisovaní súbor, potom som zapisoval spisovateľ zlikvidujte ho, čo podľa môjho názoru zbaviť sa akýchkoľvek zdrojov.

Takže mám pár otázok

  1. Má niekto podobné problémy a podarilo sa ich obísť
  2. Ako možno zistiť, čo všetko programuje? proces je sobecne uzamknutý súbor !!!

na zdravie

odpovede:

1 pre odpoveď č. 1

Sysinternals Filemon má niektoré informácie (posúvajte nadol) o tom, ako to dosiahli v starších verziách systému Windows.

Monitorovanie procesu je ich najnovšia verzia, ale neposkytuje veľa dôkazov o tom, ako to robia. Existujú však niektoré články z vedomostnej základne, ktoré sú tu prepojené, čo by vás malo viesť k týmto informáciám.

-Adam


4 pre odpoveď č. 2

Sysinternals handle.exe je prvým krokom. Alebo použite Process Explorer"s Find Handle or DLL, Je to stále bezpečnejšie zabiť proces ako zatvoriť rukoväť.

Programovo je to otázka písania ovládača jadra, ktorý číta tabuľku ovládačov systému Windows.


2 pre odpoveď č. 3

ProcessMon (na zistenie) a Unlocker (prinajmenšom na odblokovanie).