Описание команды


nfsis

Получение системной информации с помощью WMI.

nfsis=Mode||sname<>, ||<info>||Dialogs||cliptext||[tc]||progres<>

Параметры:

ModeРежим получения информации. Mode|NameSpace||String||Flag , где:
  Mode - режим получения данных:
   -1 - получение всех пространств путей заданного пути (по умолчанию root).
    0 - получение всех классов заданного пространства имён.
    1 - получение информации заданного класса.
    2 - получение названий свойств заданного класса.
    4 - получение значений одного заданного свойства в параметре sname<Name>
        (полезно, если свойство имеет массив значений).
  NameSpace [необязательный] название (путь) пространства имён в \root\, примеры:
    • CIMV2 (по умолчанию).
    • WMI.
    • DEFAULT.
    • MSAPPS12.
    • CIMV2\Applications\Games.
  String - строка поиска. Возможны варианты записи:
  - полная строка: 'SELECT ... FROM ... WHERE ... '
  - короткая строка, начинающаяся с имени класса: 'Win32_ ...'
  Flag - [необязательный] (для Mode=1).
    0 - начальный 2D массив (по умолчанию).
    1 - транспонированный 2D массив (меняются местами строки и столбцы).
sname<>Строка свойств.
Параметр sname<Property1|Property2|Property3|...|PropertyN>, где:
  PropertyN - свойства класса.
  При этом параметре будет получена информация только для заданных свойств, в том же порядке, как они прописаны, при Mode=1.
Дополнительные параметры:
<info>Получение различной информации. см. Дополнение №10.
DialogsДиалоги. см. Дополнение №18
  Описание
Различные параметры диалогов.
  [input] - диалог ввода информации в InputBox.
  [richinput] - диалог ввода информации в RichInputBox.
  [combo] - диалог выбора информации в ComboBox.
  [group] - диалог выбора информации в GroupBox.
  [check] - диалог выбора информации в CheckBox.
  [edits] - диалог выбора информации в EditBox.
  [sfold] - выбор каталога.
  [zfold] - выбор каталогов.
  [sopen] - выбор файла для открытия.
  [ssave] - выбор файла для сохранения.
  [sicon] - диалог просмотра и выбора значка.
  [msgbx] - окно сообщения MsgBox.
  [updwn] - диалог выбора числовой информации UpDown.
  [image] - диалог выбора изображения.
  [elect] - диалог выбора файлов и папок.
...и другие диалоги.
cliptextcliptext. Тег будет заменён содержимым из буфера обмена.
[tc]Расширенный аналог параметров Total Commander. см. Дополнение №12.
progres<>Прогресс бар. Параметр progres<> - если указан, то при операции будет вызван прогресс бар.
Учитывается ключ MsBoxAtTheCompletion в TCIMG.ini в секции [Setting].

Примечания:

WMI - Windows Management Instrumentation (инструментарий управления Windows)
Подробности можно найти в интернете, например, здесь WMI
Для составления параметров можно воспользоваться программами отображающих информацию WMI: WMICodeCreator, WmiExplorer или другими.

Для получения информации от некоторых классов требуется длительное время.

На разных системах Windows пути WMI могут быть различны, для получения всех путей можно воспользоваться командой

nfsis=-1 GLOBALNFSIS<a>


Дополнительные символы, которые можно использовать в строке: "@CR" - Символ возврата каретки, Chr(13), "@LF" - Символ перевода строки, Chr(10), "@CRLF" = @CR & @LF, "@TAB" - Символ Tab, Chr(9).

Если в команде(ах) необходимы кавычки, то используются две одинарных кавычки (апострофа) '' , если в команде необходим пробел - используются два символа тильды ~~.Команда имеет возможность передавать другим командам информацию через именные глобальные переменные. см. Дополнение №23

Имя переменнойОписание
GLOBALNFSISодномерный 1D массив имён классов при Mode=-1 и Mode=0.
одномерный 1D массив названия свойств при Mode=2.
двумерный 2D массив выходных данных при Mode=1.
GLOBALNFSIS0
GLOBALNFSIS1
GLOBALNFSIS2
...
GLOBALNFSISN
массивы выходных данных при Mode=1:
в GLOBALNFSIS0 - одномерный массив 0-й колонки.
в GLOBALNFSIS1 - одномерный массив 1-й колонки.
в GLOBALNFSIS2 - одномерный массив 2-й колонки.
...
в GLOBALNFSISN - одномерный массив N-й колонки.


Команда для преобразования двумерного 2D массива arr2d
Команда для создания двумерного 2D массива anf2d
Для сохранения двумерного 2D массива воспользуйтесь командой asave

См. также:

device, extxs, extxt, funau, funjs, funvb, infos, inplg, versn

Примеры:
 Как создать кнопку?

nfsis=0 GLOBALNFSIS<a> ;; получить в таблице имена всех классов "\ROOT\CIMV2"

nfsis=0|DEFAULT GLOBALNFSIS<a> ;; получить в таблице имена всех классов "\ROOT\DEFAULT"

nfsis=0|MSAPPS12 GLOBALNFSIS<a> ;; получить в таблице имена всех классов "\ROOT\MSAPPS12"

nfsis=0|WMI GLOBALNFSIS<a> ;; получить в таблице имена всех классов "\ROOT\WMI"

nfsis=-1 GLOBALNFSIS<a> ;; получить в таблице все пути пространства путей "root"

nfsis=1||CIM_DataFile~~WHERE~~Drive='C:'~~AND~~Path='\\Windows\\System32\\'~~AND~~Extension='dll'||1||progres<> GLOBALNFSIS<a> ;; получить информацию о dll файлах в папке System32

nfsis=1||CIM_DataFile~~WHERE~~Drive='C:'~~AND~~Path='\\Windows\\System32\\'~~AND~~FileName='advapi32'~~AND~~Extension='dll' GLOBALNFSIS<a> ;; получить информацию заданного файла

nfsis=1||SELECT~~*~~FROM~~Win32_PingStatus~~WHERE~~ADDRESS='https://yandex.ru' GLOBALNFSIS<a> ;; информация заданного хоста

nfsis=1||SELECT~~*~~FROM~~Win32_PnPSignedDriver~~WHERE~~DeviceID=''SWD\\PRINTENUM\\{47ABBC46-D6E9-4C21-B909-531D19F422CF}'' GLOBALNFSIS<a> ;; получить информацию заданного драйвера устройства по его значению DeviceID

nfsis=1||SELECT~~*~~FROM~~Win32_PnPSignedDriver~~WHERE~~PDO=''\\Device\\00000081'' GLOBALNFSIS<a> ;; получить информацию заданного драйвера устройства по его значению PDO (PhysicalDeviceObjectName)

nfsis=1||SELECT~~BytesReceivedPerSec,BytesSentPerSec~~FROM~~Win32_PerfRawData_Tcpip_NetworkInterface GLOBALNFSIS<a> ;; получить информацию о текущем трафике в данный момент (в байтах)

nfsis=1||SELECT~~Caption,CreationDate,FileName,FileSize,Version~~FROM~~CIM_DataFile~~WHERE~~Drive='C:'~~AND~~Path='\\Windows\\System32\\'~~AND~~Extension='dll'||1||progres<> GLOBALNFSIS<a> ;; получить информацию заданных свойств (Caption,CreationDate,FileName,FileSize,Version) о dll файлах в папке System32

nfsis=1||SELECT~~Description,DriverDate,DriverVersion,InfName,IsSigned~~FROM~~Win32_PnPSignedDriver~~WHERE~~PDO=''\\Device\\00000081'' GLOBALNFSIS<a> ;; получить информацию драйвера устройства по его значению PDO (PhysicalDeviceObjectName) для заданных имён

nfsis=1||SELECT~~DeviceID,FreeSpace~~FROM~~Win32_LogicalDisk~~WHERE~~DeviceID='C:' GLOBALNFSIS<a> ;; получить информацию о диске C: для свойств DeviceID и FreeSpace

nfsis=1||SELECT~~Model~~FROM~~Win32_DiskDrive~~WHERE~~InterfaceType='USB' GLOBALNFSIS<a> ;; получить модель USB накопителя(ей)

nfsis=1||SELECT~~Name,Version~~FROM~~Win32_Product||1 GLOBALNFSIS<a> ;; получить информацию о программах установленных в системе для свойств Name,Version

nfsis=1||SELECT~~Name,Version~~FROM~~Win32_Product~~WHERE~~Vendor=''Яндекс''||1 GLOBALNFSIS<a> ;; получить все программы, установленные в системе от Яндекса

nfsis=1||SELECT~~NetConnectionStatus,NetConnectionID~~FROM~~Win32_NetworkAdapter~~WHERE~~NetConnectionID~~IS~~NOT~~NULL GLOBALNFSIS<a> ;; получить имена подключаемых интерфейсов, имя которых не пустое

nfsis=1||SELECT~~NetConnectionStatus,NetConnectionID~~FROM~~Win32_NetworkAdapter~~WHERE~~NetConnectionStatus=2 GLOBALNFSIS<a> ;; получить имена подключаемых интерфейсов, статус которых равен 2 (подключён)

nfsis=1||SELECT~~SerialNumber,Tag~~FROM~~Win32_PhysicalMedia GLOBALNFSIS<a> ;; получить серийные номера всех установленных накопителей

nfsis=1||Win32_AccountSID||1 GLOBALNFSIS<a> ;; получить в таблице учётные записи безопасности

nfsis=1||Win32_BaseBoard GLOBALNFSIS<a> ;; получить в таблице информацию о материнской плате компьютера

nfsis=1||Win32_Battery GLOBALNFSIS<a> ;; получить в таблице сведения о батареи

nfsis=1||Win32_BIOS GLOBALNFSIS<a> ;; получить в таблице сведения о BIOS

nfsis=1||Win32_BootConfiguration GLOBALNFSIS<a> ;; получить информацию о загрузочной конфигурации компьютерной системы

nfsis=1||Win32_CDROMDrive GLOBALNFSIS<a> ;; получить в таблице сведения о CDROM

nfsis=1||Win32_ClassicCOMClassSetting||1||sname<Caption|ComponentId|InprocServer32|AppID|LocalServer32|ProgId|TypeLibraryId|Version|VersionIndependentProgId> GLOBALNFSIS<a> ;; получить список зарегистрированных в системе COM-объектов

nfsis=1||Win32_CodecFile GLOBALNFSIS<a> ;; получить в таблице сведения о кодеках

nfsis=1||Win32_ComputerSystem GLOBALNFSIS<a> GLOBALNFSIS0<a> GLOBALNFSIS1<a> ;; получить в таблице информацию о компьютере

nfsis=1||Win32_ComputerSystemProduct GLOBALNFSIS<a> ;; получить в таблице сведения о компьютере

nfsis=1||Win32_ComputerSystemProduct||sname<Name|IdentifyingNumber|UUID> GLOBALNFSIS<a> ;; получить в таблице сведения о компьютере заданных свойств

nfsis=1||Win32_DependentService||1 GLOBALNFSIS<a> ;; получить информацию зависимых служб

nfsis=1||Win32_Desktop||1 GLOBALNFSIS<a> ;; получить в таблице сведения о рабочем столе

nfsis=1||Win32_DesktopMonitor GLOBALNFSIS<a> ;; получить информацию о мониторах

nfsis=1||Win32_DiskDrive GLOBALNFSIS<a> ;; получить информацию дисковых накопителях компьютера

nfsis=1||Win32_Group||1 GLOBALNFSIS<a> ;; получить информацию о группах пользователя

nfsis=1||Win32_Keyboard GLOBALNFSIS<a> ;; получить в таблице сведения о клавиатуре

nfsis=1||Win32_LoggedOnUser||1 GLOBALNFSIS<a> ;; получить информацию пользователей системы

nfsis=1||Win32_LogicalDisk GLOBALNFSIS<a> ;; получить информацию о локальных дисках компьютера

nfsis=1||Win32_LogicalDisk~~WHERE~~DeviceID='C:' GLOBALNFSIS<a> ;; получить информацию о диске C:

nfsis=1||Win32_LogicalProgramGroup||1 GLOBALNFSIS<a> ;; получить информацию групп программ на компьютере под управлением Windows

nfsis=1||Win32_LogonSession||1 GLOBALNFSIS<a> ;; получить информацию сеансов входа в систему или сессию, связанную с пользователем

nfsis=1||Win32_NetworkAdapter GLOBALNFSIS<a> ;; получить в таблице сведения об адаптерах

nfsis=1||Win32_NetworkAdapter||1||sname<NetConnectionID|NetConnectionStatus> GLOBALNFSIS<a> ;; получить имена подключаемых интерфейсов и статус (2=подключён, 0=отключён)

nfsis=1||Win32_NetworkAdapterConfiguration GLOBALNFSIS<a> ;; получить в таблице информацию об адаптерах

nfsis=1||Win32_NTEventLogFile GLOBALNFSIS<a> ;; получить информацию списка журналов в системе

nfsis=1||Win32_NTLogEvent||1 GLOBALNFSIS<a> ;; получить информацию "Журнала событий" системы

nfsis=1||Win32_OperatingSystem GLOBALNFSIS<a> ;; получить в таблице сведения о системе

nfsis=1||Win32_OperatingSystem||sname<Caption> GLOBALNFSIS1<a> ;; получить версию операционной системы

nfsis=1||Win32_OperatingSystem||sname<InstallDate> GLOBALNFSIS1<a> ;; получить дату установки Windows

nfsis=1||Win32_OperatingSystem||sname<InstallDate> hends=GLOBALNFSIS1<1>||?Fdate1||##<info=s101|D|::>~~дней GLOBALHENDS<a> ;; получить количество дней прошедших после установки Windows

nfsis=1||Win32_PerfRawData_Tcpip_NetworkInterface GLOBALNFSIS<a> ;; получить информацию об интерфейсе, связанном с интернетом

nfsis=1||Win32_PhysicalMemory GLOBALNFSIS<a> ;; получить информацию оперативной памяти

nfsis=1||Win32_PhysicalMemory||sname<Capacity>||1 slist=$GLOBALNFSIS||test<0n!![A-Z]>||##<info=n42|::|1024*1024>~~Mb GLOBALSLIST<a> ;; получить размер карт оперативной памяти в Mb (отдельно по слотам, если 2 и выше)

nfsis=1||Win32_PnPdevice||1 GLOBALNFSIS<a> ;; получить в таблице список периферийных устройств компьютера

nfsis=1||Win32_PnPEntity||1 GLOBALNFSIS<a> ;; получить информацию списка всех устройств компьютера

nfsis=1||Win32_PnPSignedDriver GLOBALNFSIS<a> ;; получить в таблице информацию драйверов

nfsis=1||Win32_PointingDevice GLOBALNFSIS<a> ;; получить информацию об устройствах мышь, тачпад

nfsis=1||Win32_Printer GLOBALNFSIS<a> ;; получить в таблице сведения о принтерах

nfsis=1||Win32_PrinterConfiguration GLOBALNFSIS<a> ;; получить в таблице список принтеров и их свойств

nfsis=1||Win32_Process GLOBALNFSIS<a> GLOBALNFSIS0<a> GLOBALNFSIS1<a> ;; получить в таблице информацию о процессах

nfsis=1||Win32_Process||1 GLOBALNFSIS<a> GLOBALNFSIS0<a> GLOBALNFSIS1<a> ;; получить в таблице информацию о процессах (обратная таблица)

nfsis=1||Win32_Process~~WHERE~~Caption=''TOTALCMD.EXE'' GLOBALNFSIS<a> ;; получить информацию заданного процесса

nfsis=1||Win32_Processor GLOBALNFSIS<a> ;; получить в таблице сведения о процессоре

nfsis=1||Win32_Processor||sname<NumberOfLogicalProcessors> GLOBALNFSIS<a> ;; получить количество логических процессов

nfsis=1||Win32_Product||1 GLOBALNFSIS<a> ;; получить информацию о программах установленных в системе

nfsis=1||Win32_QuickFixEngineering GLOBALNFSIS<a> ;; получить информацию обновлений системы

nfsis=1||Win32_QuickFixEngineering||1 GLOBALNFSIS<a> ;; получить информацию обновлений системы

nfsis=1||Win32_Service||1 GLOBALNFSIS<a> ;; получить в таблице сведения о службах

nfsis=1||Win32_Service||1||sname<PathName|Name|DisplayName|Caption|Description|ProcessId|ServiceType|State> GLOBALNFSIS<a> ;; получить в таблице сведения о службах только для заданных свойств

nfsis=1||Win32_Service~~WHERE~~Name=''WerSvc''||1||sname<Name> <IF> GLOBALNFSIS<0> = 2 <THEN> infbx=||Заданная~~служба~~существует||3||200||70 <ENDIF> ;; проверка имени службы "WerSvc" с выводом сообщения

nfsis=1||Win32_Service~~WHERE~~Name=''WerSvc''||1||sname<Name> GLOBALNFSIS<a> ;; проверка имени службы "WerSvc", если во 2-й ячейке GLOBALNFSIS есть заданное имя службы, значит она существует, иначе нет

nfsis=1||Win32_Share GLOBALNFSIS<a> ;; получить информацию об общих папках системы

nfsis=1||Win32_SoundDevice GLOBALNFSIS<a> ;; получить в таблице сведения об аудио

nfsis=1||Win32_StartupCommand||1 GLOBALNFSIS<a> ;; получить информацию о командах автозагрузки

nfsis=1||Win32_SystemEnclosure GLOBALNFSIS<a> ;; получить в таблице информацию о шасси компьютера

nfsis=1||Win32_USBController GLOBALNFSIS<a> ;; получить в таблице сведения об USB контроллерах

nfsis=1||Win32_USBControllerDevice||1 GLOBALNFSIS<a> ;; получить в таблице сведения об USB контроллерах

nfsis=1||Win32_USBHub GLOBALNFSIS<a> ;; получить в таблице информацию о USB накопителей

nfsis=1||Win32_UserAccount||1 GLOBALNFSIS<a> ;; получить информацию пользователей системы

nfsis=1||Win32_UTCTime GLOBALNFSIS<a> ;; получить в таблице системное время

nfsis=1||Win32_VideoController GLOBALNFSIS<a> GLOBALNFSIS1<a> GLOBALNFSIS2<a> ;; получить в таблице информацию о видеокарте

nfsis=1||Win32_VideoController GLOBALNFSIS<a> ;; получить в таблице сведения о видеокарте

nfsis=1||Win32_Videocontroller GLOBALNFSIS<a> ;; получить в таблице сведения о видеоустройствах

nfsis=1||Win32_VideoController||1||sname<Name> GLOBALNFSIS<a> ;; получить имя видеокарты

nfsis=1||Win32_Volume GLOBALNFSIS<a> ;; получить в таблице информацию о дисках компьютера

nfsis=-1|CIMV2 GLOBALNFSIS<a> ;; получить в таблице все пути пространства путей "CIMV2"

nfsis=1|CIMV2\Applications\Games||Game||1 GLOBALNFSIS<a> ;; получить в таблице информацию игр, установленных в системе

nfsis=1|CIMV2\Applications\WindowsParentalControls||WpcRatingsSystem||1 GLOBALNFSIS<a> ;; получить в таблице информацию о файлах оценок игр, установленных в системе

nfsis=1|CIMV2\power||Win32_PowerSettingDataIndex||1||sname<InstanceID|SettingIndexValue> GLOBALNFSIS<a> ;; получить в таблице информацию о режимах питания в системе

nfsis=1|CIMV2\TerminalServices||Win32_TSAccount||1 GLOBALNFSIS<a> ;; получить в таблице информацию об аккаунтах системы

nfsis=1|DEFAULT||SystemRestore GLOBALNFSIS<a> ;; получить в таблице информацию о точках восстановления системы

nfsis=1|MSAPPS12||Win32_ADOCoreComponents GLOBALNFSIS<a> ;; получить в таблице информацию компонентов ADOCore

nfsis=1|nap||NAP_EnforcementClient GLOBALNFSIS<a> ;; получить в таблице информацию сети

nfsis=1|WMI||MSAcpi_ThermalZoneTemperature GLOBALNFSIS<a> ;; получить в таблице информацию элементов класса MSAcpi_ThermalZoneTemperature "\ROOT\WMI"

nfsis=1|WMI||MSAcpi_ThermalZoneTemperature||sname<CurrentTemperature> sends=x||?V|##|(GLOBALNFSIS1<1>-2732)/10 GLOBALSENDS<a> ;; получить температуру процессора (не на всех ПК)

nfsis=1|WMI||MSStorageDriver_ATAPISmartData GLOBALNFSIS<a> ;; получить в таблице информацию элементов класса MSStorageDriver_ATAPISmartData "\ROOT\WMI"

nfsis=1|WMI||WmiMonitorID GLOBALNFSIS<a> ;; получить информацию элементов класса WmiMonitorID "\ROOT\WMI"

nfsis=2||CIM_DataFile GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса CIM_DataFile

nfsis=2||Win32_ComputerSystem GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса Win32_ComputerSystem

nfsis=2||Win32_NetworkAdapterConfiguration GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса Win32_NetworkAdapterConfiguration

nfsis=2||Win32_Process GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса Win32_Process

nfsis=2||Win32_Service GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса Win32_Service

nfsis=2||Win32_VideoController GLOBALNFSIS<a> ;; получить в таблице названия свойств заданного класса Win32_VideoController

nfsis=2|WMI||MSStorageDriver_ATAPISmartData GLOBALNFSIS<a> ;; получить в таблице названия свойств класса MSStorageDriver_ATAPISmartData "\ROOT\WMI"

nfsis=4|WMI||MSStorageDriver_ATAPISmartData||sname<VendorSpecific> GLOBALNFSIS<a> ;; получить массив значений для свойства VendorSpecific

sends=@[tc=AA]??-1||:\!!:@CRLF\||\!!\\ nfsis=1||CIM_DataFile~~WHERE~~Drive='GLOBALSENDS<1>'~~AND~~Path='GLOBALSENDS<2>'||1||progres<> GLOBALNFSIS<e|2> ;; получить информацию о файлах в папке под курсором

sends=@[tc=AA]||\!!\\ nfsis=1||CIM_DataFile~~WHERE~~Name='GLOBALSENDS<1>' GLOBALNFSIS<a> ;; получить информацию для файла под курсором


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru