Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата andr_mozg:
я знаю что за агент но думаю что ВАМ это не скажет не очем, »
Скажет.

Цитата andr_mozg:
и скриншот непонятно зачем.

как это может помочь сменить кодировку ?»
Я ж волшебник .

Попробуйте так:
читать дальше »
Код: Выделить весь код
Option Explicit

Const adVarChar = 200

Dim strComputer

Dim objSWbemLocator
Dim objSWbemServicesEx
Dim collSWbemObjectSet
Dim objSWbemObjectEx


strComputer = "."

Set objSWbemLocator    = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
Set collSWbemObjectSet = objSWbemServicesEx.ExecQuery("SELECT * FROM  Win32_Service")

With WScript.CreateObject("ADODB.Recordset")
	With .Fields
		.Append "Name",        adVarChar, 2^15 - 1
		.Append "DisplayName", adVarChar, 2^15 - 1
		.Append "State",       adVarChar, 2^15 - 1
	End With
	
	.Open
	.Sort = "DisplayName ASC"
	
	For Each objSWbemObjectEx In collSWbemObjectSet
		.AddNew Array("Name", "DisplayName", "State"), Array(objSWbemObjectEx.Name, objSWbemObjectEx.DisplayName, objSWbemObjectEx.State)
	Next
	
	.MoveFirst
	
	Do Until .EOF
		With .Fields
			WScript.Echo StrConvert(.Item("Name").Value & vbTab & .Item("State").Value & vbTab & .Item("DisplayName").Value, "windows-1251", "cp866")
			WScript.Echo StrConvert(.Item("Name").Value & vbTab & .Item("State").Value & vbTab & .Item("DisplayName").Value, "cp866", "windows-1251")
		End With
		
		.MoveNext
	Loop
	
	.Close
End With

Set collSWbemObjectSet = Nothing
Set objSWbemServicesEx = Nothing
Set objSWbemLocator    = Nothing

WScript.Quit 0

В вывод пойдут две строки:
Код: Выделить весь код
			WScript.Echo StrConvert(.Item("Name").Value & vbTab & .Item("State").Value & vbTab & .Item("DisplayName").Value, "windows-1251", "cp866")
			WScript.Echo StrConvert(.Item("Name").Value & vbTab & .Item("State").Value & vbTab & .Item("DisplayName").Value, "cp866", "windows-1251")
Посмотрите по полученному выводу, не подойдёт ли Вам какая-либо из них. Лишнюю уберите.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:21, 19-12-2012 | #12