Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Это захватывающая 2D рогалик, аркадный шутер и динамичная игра. Исследуйте уникальные уровни, уничтожайте врагов, собирайте монеты и прокачивайте своего персонажа.

Подземелье дизлайков

Экшены, Аркады, Шутер

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Powershell + Программа

С этим тегом используют

Windows Гайд Приложение Технологии Инновации IT Программирование Все
3 поста сначала свежее
5
Kravenrus
Kravenrus
6 месяцев назад

Продолжение поста «Автозапуск Nekobox (NekoRay) под Windows в TUN режиме»⁠⁠1

Наконец-то руки дошли до накатить Windows 10 Pro (без твиков и т.п., MSDN), чтобы проверить всю ранее изложенную портянку. Пункт Подходим к решению основного поста не пропускаем, вся информация здесь замещает пункт Решение..

Уточню для начала:

  • версия NekoRay — 4.0-beta4

  • расположение — C:\nekoray (работал с ним, скрипты клал туда, пути в них относительно него)

  • исполняемый файл — nekobox.exe

Для любого решения

Необходимо дабы избавиться от ошибки ниже

при некорректном завершении работы программы (перезагрузка без выхода из NekoRay в трее) всегда без исключений можно ловить окошко с предложением перезапустить программу, при отказе вскоре вылетит следующее

уже есть TUN интерфейс в системе с таким названием, что указано в конфиге и вот никак с ним не получается подружиться (в диспетчере устройств он же лежит в ошибке)

Продолжение поста «Автозапуск Nekobox (NekoRay) под Windows в TUN режиме» Windows, Программа, Инструкция, Компьютерная помощь, Прокси, Кусты реестра, Powershell, Автозапуск, Длиннопост, Ответ на пост

Ошибка при запуске

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

C:\nekoray\AutorunNekoRay.ps1

# Удаляем устройства с именем "sing-tun Tunnel"

foreach ($dev in (Get-PnpDevice | Where-Object { $_.Name -like "sing-tun Tunnel" })) {

# Запускаем pnputil для удаления устройства и ждем завершения процесса

Start-Process pnputil -ArgumentList "/remove-device", "$($dev.InstanceId)" -NoNewWindow -Wait

}

# Путь к exe файлу, который находится в той же папке, что и скрипт

$exePath = Join-Path -Path $PSScriptRoot -ChildPath "nekobox.exe"

# Запускаем nekobox.exe с аргументом -tray

Start-Process -FilePath $exePath -ArgumentList "-tray"

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

  • через планировщик

  • через автозапуск (ветка реестра HKEY_LOCAL_MACHINE)

  • через автозапуск (ветка реестра HKEY_CURRENT_USER)

Что должно работать

Решение через планировщик (автоматическое выполнение скрипта выше при загрузке системы от SYSTEM). Сразу отмечу, что в трее значка NekoRay не увидите.

C:\nekoray\AutorunCreateTask.ps1

# Параметры задачи

$TaskName = "AutorunNekoRay"

$ScriptPath = "C:\nekoray\AutorunNekoRay.ps1"

$Trigger = New-ScheduledTaskTrigger -AtStartup

$Action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-ExecutionPolicy Bypass -File `"$ScriptPath`""

$Principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest

# Удаление старой задачи (если есть)

Unregister-ScheduledTask -TaskName $TaskName -Confirm:$false -ErrorAction SilentlyContinue

# Создание новой задачи

Register-ScheduledTask -TaskName $TaskName -Trigger $Trigger -Action $Action -Principal $Principal

Write-Host "Задача $TaskName успешно создана и будет выполняться при старте системы."

C:\nekoray\AutorunRemoveTask.ps1

# Название задачи

$TaskName = "AutorunNekoRay"

# Удаление задачи

try {

Unregister-ScheduledTask -TaskName $TaskName -Confirm:$false

Write-Host "Задача '$TaskName' успешно удалена."

} catch {

Write-Host "Не удалось удалить задачу '$TaskName'. Возможно, она не существует." -ForegroundColor Red

}

Далее запускаем командную строку от имени Администратора и выполняем:

powershell -ExecutionPolicy Bypass -File "C:\nekoray\AutorunCreateTask.ps1"

Для удаления задачи:

powershell -ExecutionPolicy Bypass -File "C:\nekoray\AutorunRemoveTask.ps1"

Что может сработать

Либо так:

C:\nekoray\autorunEnable.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"AutorunNekoRay"="powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File \"C:\\nekoray\\AutorunNekoRay.ps1\""

C:\nekoray\autorunDisable.reg

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"AutorunNekoRay"=-

Либо так:

C:\nekoray\autorunEnable.reg

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"AutorunNekoRay"="powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File \"C:\\nekoray\\AutorunNekoRay.ps1\""

C:\nekoray\autorunDisable.reg

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"AutorunNekoRay"=-

Для добавления в автозапуск запускаем созданный autorunEnable.reg, чтобы убрать из автозапуска — autorunDisable.reg.

Если все успешно

  • в диспетчере задач будет nekobox.exe

  • в диспетчере устройств сетевой интерфейс sing-box без ошибки

  • маршрутизация согласно описанным правилам в соответствующем конфиге

Показать полностью
[моё] Windows Программа Инструкция Компьютерная помощь Прокси Кусты реестра Powershell Автозапуск Длиннопост Ответ на пост
5
17
Kravenrus
Kravenrus
8 месяцев назад

Автозапуск Nekobox (NekoRay) под Windows в TUN режиме⁠⁠1

Хотел обновить свой пост на эту тему, но что-то набралось текста по этому поводу..

Для начала

Почему не работает галочка в интерфейсе Запускать вместе с системой для автоматического поднятия в TUN режиме..?

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

Автозапуск Nekobox (NekoRay) под Windows в TUN режиме Windows, Программа, Инструкция, Компьютерная помощь, Прокси, Кусты реестра, Powershell, Json, Автозапуск, Длиннопост

Говорящее о том, что у нас уже есть TUN интерфейс в системе с таким названием, что указано в конфиге и вот никак с ним не получается подружиться (в диспетчере устройств он же лежит в ошибке).

Подходим к решению

Прежде чем запускать NekoRay нам нужно удалить ранее созданный сетевой интерфейс, и нам надо делать это автоматически.. Забываем про галочку Запускать вместе с системой. Отмечаем пункты Запомнить последний профиль (разумеется с активированным профилем) и Режим TUN. Но это может работать некорректно, поэтому выходим из софта через трей либо Программа — Выход. Открываем следующий файл (путь может отличаться в зависимости от того где лежит папка с утилитой)

C:\nekoray\config\groups\nekobox.json

Автозапуск Nekobox (NekoRay) под Windows в TUN режиме Windows, Программа, Инструкция, Компьютерная помощь, Прокси, Кусты реестра, Powershell, Json, Автозапуск, Длиннопост

Подробнее о пунктах:

  • remember_enable — галочка Запомнить последний профиль (true/false)

  • remember_id — идентификатор профиля (подробнее ниже)

  • spmode2 — галочка Режим ... (элемент массива "vpn" для TUN режима)

Автозапуск Nekobox (NekoRay) под Windows в TUN режиме Windows, Программа, Инструкция, Компьютерная помощь, Прокси, Кусты реестра, Powershell, Json, Автозапуск, Длиннопост

Идентификатор профиля указывает на профиль, который будет активирован при запуске, нумерация в JSON начинается с нуля, как для массивов, с единицы же в графическом интерфейсе программы, т.е. 0 соответствует 1 профилю, а 2 соответствует 3 профилю.

Идентификатор со значением -1919 говорит программе о том, что не нужно активировать ни один из доступных профилей.

Решение

Отлично, NekoRay настроили, в конфиге все перепроверили.. Осталось решить задачу с удалением сетевого интерфейса, ранее созданного утилитой, чтобы при перезагрузке или включении компьютера не словить проблем. Как я говорил ранее, про галочку Запускать вместе с системой забыли. Создаем файл AutorunNekoRay.ps1 рядом с nekobox.exe

C:\nekoray\AutorunNekoRay.ps1

Содержимое скрипта следующее

# Удаляем устройства с именем "sing-tun Tunnel"

foreach ($dev in (Get-PnpDevice | Where-Object { $_.Name -like "sing-tun Tunnel" })) {

# Запускаем pnputil для удаления устройства и ждем завершения процесса

Start-Process pnputil -ArgumentList "/remove-device", "$($dev.InstanceId)" -NoNewWindow -Wait

}

# Путь к exe файлу, который находится в той же папке, что и скрипт

$exePath = Join-Path -Path $PSScriptRoot -ChildPath "nekobox.exe"

# Запускаем nekobox.exe с аргументом -tray

Start-Process -FilePath $exePath -ArgumentList "-tray"

Стоит отметить, что в исходной конфигурации интерфейс в диспетчере устройств называется sing-tun Tunnel. Если меняли, то используем свое название, или смотрим что появилось в диспетчере с включенным режимом TUN.

Создаем файлы autorunEnable.reg (для добавления в автозапуск) и autorunDisable.reg (для удаления из автозапуска), их содержимое соответственно ниже. Проверяйте путь скрипта RemoveNetworkInterfaceTest.ps1!

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"RemoveNetworkInterfaceTest"="powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File \"C:\\nekoray\\RemoveNetworkInterfaceTest.ps1\""

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

"RemoveNetworkInterfaceTest"=-

Чтобы утилита запускалась для всех пользователей — HKEY_CURRENT_USER необходимо заменить на HKEY_LOCAL_MACHINE в файлах .reg. Также рекомендую быть администратором в системе при использовании HKEY_CURRENT_USER, при использовании HKEY_LOCAL_MACHINE шансов выше, что утилита запуститься с правами администратора, от системного пользователя (касается не только NekoRay).

Запускаем autorunEnable.reg, соглашаемся со всем, что выскочит. Перезагружаем компьютер — радуемся.

Автозапуск Nekobox (NekoRay) под Windows в TUN режиме Windows, Программа, Инструкция, Компьютерная помощь, Прокси, Кусты реестра, Powershell, Json, Автозапуск, Длиннопост

Если что-то не работает перепроверяем именно конфиг (ну я по крайней мере решил, что это надежнее). Если все-таки трудности настигают киньте в комментарии скриншоты, где у вас nekobox.exe лежит, скрипта и файлов реестра (.reg), не забудьте конфиг nekobox.json попробуем разобраться 🫡

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

Показать полностью 3
[моё] Windows Программа Инструкция Компьютерная помощь Прокси Кусты реестра Powershell Json Автозапуск Длиннопост
21
53
rudm
rudm
1 год назад
Лига Сисадминов
Серия Программизмы

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера⁠⁠

Поскольку Windows 7 и CMD, а вместе с ней и WMIC, прощаются с нами возникла необходимость переписать предыдущий CMD скрипт для сбора основной информации о железе и софте локального ПК на Powershell.

В новой версии я сделал HTML-таблицу проще, убрал некоторую лишнюю информацию и внес еще кое-какие никому не интересные изменения. Новый скрипт умеет экспортировать данные в *.json, правильный *.csv с кавычками, удобочитаемый *.xml с понятными названиями тегов и в *.html как графическое представление собранной информации.

Зачем нужен этот велосипед, скажете вы, если уже есть hwinfo, aida, msinfo32, siw, everest и прочие? К сожалению, ни одна из вышеперечисленных программ не удовлетворяет полностью моим задачам. Они либо платные, либо требуют установки, либо не умеют в командную строку, либо требуют дополнительных действий со стороны пользователя, либо же их функционал избыточен.

Скрипт же можно изменять под ваши конкретные нужды просто редактируя код в блокноте или Powershell ISE. Linux way, bitch. Пардон. Достаточно не нарушать структуру вложенности главного словаря $PCInfo в котором хранится вся обработанная и готовая к выводу информация. То есть, не плодить еще вложенные словари внутри уже вложенных словарей. Больше словарей богу словарей! (Нет).

Пример работы скрипта при экспорте в *.HTML файл.

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера Программа, Windows, Powershell, Длиннопост

Отображение информации о железе ПК в виде *.HTML файла, для просмотра которого достаточно любого браузера.

Так выглядит информация экспортированная в *.csv и открытая в MS Excel

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера Программа, Windows, Powershell, Длиннопост

Результаты отображения информации в формате *.CSV в программе MIcrosoft Excel

Помните, что в российском Excel разделителем в CSV считается не запятая, а точка с запятой ; Соответственно для корректного отображения *.csv в Excel нужно включить в скрипте использование региональных стандартов.

Если хотим забирать инфу в какую-нибудь NoSQL базу, то лучше всего подойдет экспорт в JSON

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера Программа, Windows, Powershell, Длиннопост

Результаты отображения информации в формате *.JSON

Приятно удивило, что экспорт в JSON в Powershell делается буквально двумя строчками при условии, что вы скармливаете в конвейер [ordered]Dictionary или [PSCustomObject].

Для любителей смотреть CSV в блокноте, можно открыть CSV в блокноте.

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера Программа, Windows, Powershell, Длиннопост

Скромное и лаконичное обаяние *.CSV

Выше показан результат экспорта в правильный международный *.csv, с запятыми в качестве разделителей и токенами в кавычках, как и должно быть согласно CSV стандарту. Акцентирую на этом внимание потому, что некоторые производители, - да, Microsoft? - считают, что заключать токены строки в кавычки при экспорте в *.CSV необязательно.

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

Powershell скрипт для сбора информации об аппаратной конфигурации компьютера Программа, Windows, Powershell, Длиннопост

Отображение вывода в *.XML формате

Скачать скрипт с комментариями на английском можно, конечно, с github'a alive-one/PowerShell-System-Hardware-Info: PowerShell script to collect major hardware and some software information on system (github.com)

С комментариями на русском из темы форума ixbt.com Powershell скрипт для сбора информации с локального ПК - Конференция iXBT.com

P.S. Скрипт можно сделать более функциональным:

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

02. Писать собранную информацию в, например, MySQL базу данных.

03. Собирать более детальную информацию о статусе и состоянии жестких дисков.

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

Показать полностью 5
[моё] Программа Windows Powershell Длиннопост
40
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии