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

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

Ветеран


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

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


Используйте Wbem, класс Win32_Process и его метод Create, задавая потребные свойства окна создаваемого процесса посредством класса Win32_ProcessStartup.

Как это может выглядеть на WSH:
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim objSWbemServicesEx


Set objSWbemServicesEx = WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")

RunProcess "ping.exe -t google.com",    "c:\windows\system32", "Обмен пакетами с Google.com",    100, 100, 600, 200, 20, 5
RunProcess "ping.exe -t yandex.ru",     "c:\windows\system32", "Обмен пакетами с Yandex.com",    100, 350, 600, 200, 20, 5
RunProcess "ping.exe -t microsoft.com", "c:\windows\system32", "Обмен пакетами с Microsoft.com", 100, 600, 600, 200, 20, 5
RunProcess "ping.exe -t mozilla.com",   "c:\windows\system32", "Обмен пакетами с Mozilla.com",   750, 100, 600, 200, 20, 5

Set objSWbemServicesEx = Nothing

WScript.Quit 0

Sub RunProcess(strCommandLine, strWorkingDirectory, strTitle, intX, intY, intXSize, intYSize, intXCountChars, intYCountChars)
	Const SW_NORMAL = 1
	
	Dim objSWbemObjectEx
	Dim lngProcessID
	
	
	Set objSWbemObjectEx = objSWbemServicesEx.Get("Win32_ProcessStartup").SpawnInstance_
	
	With objSWbemObjectEx
		.Title       = strTitle
		
		.X           = intX
		.Y           = intY
		
		.XSize       = intXSize
		.YSize       = intYSize
		
		.XCountChars = intXCountChars
		.YCountChars = intXCountChars
		
		.ShowWindow  = SW_NORMAL
	End With
	
	objSWbemServicesEx.Get("Win32_Process").Create strCommandLine, strWorkingDirectory, objSWbemObjectEx, lngProcessID
	
	Set objSWbemObjectEx = Nothing
End Sub

Естественно, Вам нет никакой нужды пользовать именно WSH. Используйте код просто как образец для написания аналога на Python'е.

Отправлено: 12:04, 02-08-2018 | #3