Как закрыть программу на другом компьютере

написать что-то типа небольшого сервера, слушающего определенный порт. с функциями получение списка запущенных приложений и завершения процесса по названию.

← →
novice ( 2006-05-17 13:47 ) [9]

> написать что-то типа небольшого сервера, слушающего определенный
> порт. с функциями получение списка запущенных приложений
> и завершения процесса по названию.

Но в этом случае и клиента размещать на той машинке придется, что меня не совсем радует. Напомню — вин98, т.е., не дать пользователю отрубить клиента я не смогу, а необходимо, чтобы независимо от желаний/возможностей пользователя я мог у него завершить приложение, причем с другой машины.

← →
novice ( 2006-05-17 15:50 ) [15]

Думал над этим — но задание шедулера никуда не спрятать. Вобщем, если применить WMI не получится, то придется скрывать программу в диспетчере, хотя это все-таки не совсем то и при наличии соображалки у юзера он эту защиту обойдет. Основная проблема на тек. момент — не нахожу SDK для винтукея и выше.

ЗАЧЕМ МЫШКАМ ВЫСОКИЙ DPI 🤔 #shorts #gaming #pc

Источник: delphimaster.net

Как закрыть расшаренный файл файл, если он не хочет закрываться?

Собственно сабж был задан в течнете, но чот ответить никто не хочет, да и вопрос я задал наверное криво.

Столкнулся с такой проблемой. Есть две виртуалки Win2016, не в домене, сделаны как файлопомойка и сервер удаленных рабочих столов. Пользователи цепляются по рдп на одну, и работают с файлами на другой(ох и не говорите, не моё творение, и я сейчас стремлюсь от этого избавиться, но. ). Работают аналитики и простые рабочие с экселевскими файлами. Что первые, что вторые их редактируют.

И иногда случается коллапс. Кто то не может закрыть. Как бы делов то нема — заходишь в управление открытыми файлами, кликаешь правой кнопкой мыши и закрываешь. Где может быть подвох? Собственно подвох в том, чтопри попытки открыть файл, пишет, что им якобы еще пользуются.

Пытаешься закрыть сеанс пользователя — ничего не меняется. А вот когда заходишь в диспетчер задач другого сервера, закрываешь отключенный сеанс этого пользователя, а соответственно точно отключаешь все, что с ним связанно, то тогда доступ к файлу восстанавливается.

Какая может быть первая мысль? Видимо связь где то между двумя серверами глючит, либо проблема в примитивном расшаривании папок. Ибо у меня стоит на другом месте занятости сервак Win2008 с DFS и там всё в порядке.

Так как мне от этого надо уйти, решил развернуть сперва тестовый «стенд» с почти полноценно настроенными AD и DFS.

Настроил сервер, домен, пространство имен с тестовой папкой. Настроил виртуальный пк, добавил его в домен. Создал двух пользователей: «buh» и «law». Создал Экселевский файлик.

Моделируем ситуацию.
Buh открывает тестовый файл, начинает редактировать его и куда то уходит.

Как закрыть или завершить процесс, зависшую программу или вирус в командной строке

Читайте также:
Программа которая делает из фотки аниме


Law пытается открыть этот файл, матерясь идет ко мне, я захожу в управление открытыми расшаренными файлами и папками и вижу, что бух открыл два файла
5dd610324a960515481678.png


Я их закрываю и говорю law, что всё огонь и он может дальше работать. Но не тут то было. Файл всё так же заблокирован
5dd61063ae2a1119627472.png

Полазал по интернету, ничего не нашел. Нашел смежные темы, где пользователь файл закрывает, а сервер думает, что не закрывает. Но тем не менее(не отрицаю, что мог проглядеть) я не нашел удовлетворяющего меня ответа.

Помогите справится с этой проблемой, или подскажите какие нибудь действенные примочки, которые помогут грамотно управлять расшаренными файлами на серверной винде.

  • Вопрос задан более трёх лет назад
  • 272 просмотра

7 комментариев

Средний 7 комментариев

Источник: qna.habr.com

Windows Server – Как закрыть открытые файлы

Здесь я опишу, как закрыть открытые файлы и процессы сервера.

Каждый системный администратор в системах Microsoft Windows Server хотя бы один раз попадет в ситуацию что какой-то файл открыт на сервере, и необходимо проверить, какой процесс или пользователь открыл его.

Эти открытые файлы могут вызвать некоторые проблемы, такие как ошибки обновления, задержка перезагрузки и т. д. .

Это может быть огромная проблема, которая, если ее не продумать, может вызвать задержку обновлений или ошибки в обслуживании сервера.

Чаще, но менее серьезные проблемы по этому поводу могут исходить от пользователей. Иногда в ситуациях, когда пользователи оставляют общие файлы открытыми в своих учетных записях, некоторые другие пользователи при открытии того же файла могут получать сообщения об ошибках и не могут получить доступ к тому же файлу.

Эта статья покажет вам способ решения таких проблем, как найти и закрыть открытые файлы/процессы. Операции могут быть применены к системам Microsoft Windows Server 2008, 2012, 2016 и Windows 10 для рабочих станций.

Существует множество методов работы для решения таких проблем, во-первых, один, который мы Опишем использование управления компьютером:

Просмотр открытых файлов в общей папке

В ситуации заблокированных файлов на сервере, сделанных пользователями, этот метод может пригодиться для устранения неполадок.

Щелкните правой кнопкой мыши в меню “Пуск” и выберите Управление компьютером (или введите в меню “Пуск” поиск compmgmt. msc)

Процедура очень проста и в большинстве случаев работает без проблем.

Щелкните Общие папки ”, а затем в Открыть файлы .

Должен открыться экран со списком файлов, которые определены как открытые, пользователь который открыл его, возможные блокировки и режим, в котором он был открыт.

Щелкнув правой кнопкой мыши по желаемому файлу, выберите опцию «Закрыть открытый файл», и он закроет его.

Процессы и сведения о файлах немного отличаются.

Использование диспетчера задач Windows

Диспетчер задач не закрывается открытым общие файлы, но он может закрыть процессы в системе.

Его можно открыть с помощью комбинации клавиш ctrl, alt, del (и выбрать Диспетчер задач ) , или щелкнув правой кнопкой мыши на панели задач, затем выберите опцию открытия диспетчера задач.

На вкладке процессы вы можете увидеть все активные процессы и выровнять их по параметрам ЦП, памяти и т. д.

Если есть процесс, который вы хотите завершить, это можно сделать, просто щелкнув процесс правой кнопкой мыши и выбрав опцию «Завершить процесс».

Использование монитора ресурсов

Для каждого системного администратора Resource Monitor – это «инструмент», который позволяет контролировать и просматривать общие системные процессы и многое другое.

Читайте также:
Как заблокировать программу nod32

Resource Monitor можно открыть, набрав «монитор ресурсов» в поле поиска меню «Пуск».

Другой вариант – открыть диспетчер задач, нажать кнопку выполнить вкладка, а затем щелкните Открыть монитор ресурсов .

Когда открывается монитор ресурсов, он отображает вкладки, и одна из них, необходимая для этой операции, – Диск .

Показывает диск. активность, процессы, открытие файлов, PID, чтение и запись байтов в секунду и т. д.

Если в системе запущено много «живых» процессов, это может сбивать с толку, поэтому Resource Monitor предлагает « остановить мониторинг в реальном времени », которая остановит процессы на экране, выполняющиеся вверх и вниз, и предоставит вам обзор всех процессов до« момента остановки ».

Монитор ресурсов предлагает обзор открытых файлов пути и процессы в системе, и с этой информацией не проблема идентифицировать и закрывать файлы или процессы.

Подход с использованием командлетов Powershell

Конечно , PowerShell может делать все, приложения с графическим интерфейсом могут, может быть, даже лучше, и в этом случае есть несколько команд, которые могут закрыть все открытые файлы и процессы вашей системы.

Их больше, чем one со сценариями PowerShell, и не рекомендуется или администраторы без опыта написания сценариев.

В этом примере мы покажем некоторые из возможных решений с использованием PowerShell.

Следующие примеры применяются к блоку сообщений сервера (SMB) и для систем, не поддерживающих SMB, следующие примеры покажут, как закрыть файл с помощью командного подхода NET.

В ситуациях, когда один или небольшое количество точных известные открытые файлы должны быть закрыты, можно использовать этот командлет. Он, как обычно, используется из PowerShell с повышенными привилегиями и применяется к одному файлу (несохраненные данные в открытых файлах во всех примерах не сохраняются).

Close -SmbOpenFile -FileId (id файла) Подтвердить Вы уверены, что хотите выполнить это действие? Выполнение операции «Закрыть файл» на целевом объекте «(идентификатор файла)». [Y] Да [A] Да для всех [N] Нет [L] Нет для всех [S] Приостановить [?] Справка (по умолчанию «Y»): N

Существует вариант командлета, который позволяет закрывать открытые файлы для определенного сеанса.

Close-SmbOpenFile -SessionId (идентификатор сеанса)

Эта команда не закрывает отдельный файл, она применяется ко всем открытым файлам с идентификатором определенного сеанса.

Другой вариант того же командлета применяется к расширению имени файла (в этот пример DOCX).

Команда проверит наличие всех открытых файлов с расширением DOCX на всех системных клиентах и ​​принудительно закроет их. Как упоминалось ранее, любые несохраненные данные в открытых файлах не будут сохранены.

Get-SmbOpenFile | Where-Object -Property ShareRelativePath -Match «.DOCX» | Close-SmbOpenFile -Force

Есть намного больше флагов этого командлета и их вариантов, которые позволяют применять множество различных фильтров и различных подходов к закрытию открытых файлов.

Подход с использованием сценариев Powershell

С помощью сценариев PowerShell можно автоматизировать процесс закрытия открытых файлов и процессов..

$ blok = > $ resources | Where-Object | ft -AutoSize $ resources | Where-Object | Foreach-Object > Invoke-Command -ComputerName pc1 -ScriptBlock $ blok

Наш пример сценария позволяет закрыть файл, указанный путем, который должен быть вставлен в script.

Этот способ закрытия открытых файлов не рекомендуется администраторам без опыта написания сценариев PowerShell, и если вы не на 100% уверены, что справляетесь с задачей, не используйте этот способ.

Читайте также:
Допиши пропущенные команды программы и впиши результат выполнения программы

Закройте файл на удаленном компьютере с помощью командной строки

Есть два других способа закрыть открытые файлы. Для их закрытия можно использовать либо Net File, либо PSFile (утилита Microsoft). Первая команда может быть испорчена удаленным использованием команды NET File с помощью Psexec.exe. Команда NET не поддерживает удаленные API.

Команда Net file может перечислить все открытые общие файлы и количество файловых блокировок для каждого файла. Команду можно использовать для закрытия файлов и снятия блокировок (аналогично предыдущему примеру SMB), и она используется, как и в предыдущем примере, когда пользователь оставляет файл открытым или заблокированным.

Это можно сделать. со следующим синтаксисом

C:> net file [id [/close]]

В этом синтаксисе параметр ID – это идентификационный номер файла (мы хотим close), и, конечно же, параметр close представляет действие, которое мы хотим применить к идентификатору (файлу).

Лучшая практика использования команды NET file – перечислить открытые файлы, запустив команду Net File, которая перечисляет все открытые файлы и подписывает их числами 0, 1 и т. д.

Итак, когда файлы перечислены, команда, которая закроет открытые файлы (например),

C:> net file 1/close

Таким образом, команда будет применяться таким образом, чтобы закрыть файл, подписанный номером 1.

Использование PsFile

PsFile – это стороннее приложение, но я не буду помещать его в список третьих лиц, так как любой хороший системный администратор должен использовать его как «нормальное».

команды похожи на команды net file, с той разницей, что они не обрезают длинные имена файлов и могут локально отображать файлы, открытые в удаленных системах.

Он использует NET API, задокументированный в инструментах платформы , и он становится доступным после загрузки пакета PsTools.

psfile [ RemoteComputer [-u Имя пользователя [-p Пароль]]] [[Id | путь] [-c]]

Использование PsFile «вызывает» удаленный компьютер с действительным именем пользователя и паролем, и со вставленным путем он закроет открытые файлы в удаленной системе

Для процессов, открытых в удаленной системе, существует аналогичная команда под названием PsKill, которая по тому же принципу «убивает» процессы.

Снять блокировку файла

В некоторых ситуациях проблему с закрытием файлов можно решить, сняв блокировку файла. Существует множество примеров, когда пользователи блокируют свои файлы и оставляют их открытыми (по какой-то причине наиболее распространенным типом заблокированных файлов являются файлы Excel).

Таким образом, все другие пользователи получают сообщение об ошибке типа : Excel заблокирован для редактирования другим пользователем, и у вас нет возможности закрыть или разблокировать его.

Как администратор, вы должны иметь повышенные права и правильную процедуру, которую можно легко исправить.

При нажатии клавиши Windows и R вы получите диалоговое окно запуска Windows.

В диалоговом окне запуска введите mmc (консоль управления Microsoft).

Перейдя к опции «Файл»> «Добавить/удалить оснастку», добавьте оснастку «Общие папки».

Если у вас уже есть операционная система, в которой есть проблема, выберите опцию «Локальный компьютер», в противном случае выберите вариант «Другой компьютер» и найдите желаемое имя компьютера.

Разверните Общие папки, затем выберите параметр «Открытые файлы».

Выберите заблокированный/открытый файл и закройте его, щелкнув правой кнопкой мыши и выбрав «Закрыть открытый файл».

Описанная процедура разблокирует и закройте открытый файл (аналогично первому примеру статьи), и пользователи смогут получить к нему доступ.

Использование сторонних приложений

На рынке существует множество сторонних приложений, предназначенных для работы с открытыми серверными файлами.

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru