Próbuję zamknąć uchwyt do zablokowanego pliku w systemie Windows, używając oprogramowania Sysinternals Handle ( http://technet.microsoft.com/en-us/sysinternals/bb896655 ).
Najpierw szukam otwartego uchwytu:
handle.exe "C:\Temp"
Wydaje mi się, co następuje:
Far.exe pid: 1144 typ: Plik 2E8: C: Temp
Far.exe pid: 1144 typ: Plik 3A8: C: Temp
Następnie uruchamiam handle.exe z parametrem -c. Jednak niezależnie od tego, którą liczbę wprowadzę, nic nie robi. Próbowałem obu: 1144, 2E8, 3A8 i 1144 na heksie (478), ponieważ pomoc oprogramowania mówi, że akceptuje PID w środowisku akademickim. Bez względu na to, co wprowadzę, po prostu pojawia się:
Handle v3.46
Copyright (C) 1997-2011 Mark Russinovich
Sysinternals - www.sysinternals.com
usage: handle [[-a [-l]] [-u] | [-c <handle> [-y]] | [-s]] [-p <process>|<pid>] [name]
-a Dump all handle information.
-l Just show pagefile-backed section handles.
-c Closes the specified handle (interpreted as a hexadecimal number).
You must specify the process by its PID.
WARNING: Closing handles can cause application or system instability.
-y Don't prompt for close handle confirmation.
-s Print count of each type of handle open.
-u Show the owning user name when searching for handles.
-p Dump handles belonging to process (partial name accepted).
name Search for handles to objects with <name> (fragment accepted).
No arguments will dump all file references.
Co ja robię źle?
windows
sysinternals
Alex
źródło
źródło
-c
opcja. Drugie zdanie.Odpowiedzi:
Wydaje się, że musisz również podać identyfikator procesu:
źródło
Składnia opcji ma -c pomiędzy pionowymi paskami, co oznacza, że jest to użycie, które może być określone w jej własnym.
Aby być poprawnym, schemat składni powinien być
który mówi, że kiedy określisz -c, musisz także określić -p i może określić -y, a -c wymaga uchwytu i -p wymaga pid.
źródło