|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Не воспринимает команду oper |
|
|
VBS/WSH/JS - [решено] Не воспринимает команду oper
|
Новый участник Сообщения: 15 |
День добрый форумчане.
У меня есть скрипт который запускает 32 экземпляра программы , выглядит он так . Скрытый текст
On Error Resume Next Dim WS Set WS = WScript.CreateObject("WScript.Shell") WS.run "%windir%\notepad.exe" WScript.Sleep 1000 'это если надо сделать паузу (в миллисекундах) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport1.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport2.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport3.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport4.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport5.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport6.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport7.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport8.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport9.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport10.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport11.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport12.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport13.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport14.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport15.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport16.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport17.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport18.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport19.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport21.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport22.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport23.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport24.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport25.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport26.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport27.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport28.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport29.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport30.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport31.exe"+chr(34) WS.run chr(34)+"G:\работа\easyport\32 изи порта\easyport32.exe"+chr(34) Set WS=nothing Появилась необходимость запускать программы с дополнительным параметром oper "USSD1" ("G:\работа\easyport\32 изи порта\easyport2.exe" oper "USSD1") Через пуск = выполнить запускается замечательно в этом виде , а вот через мой скрипт не хочет куда бы я этот параметр не вставил . выскакивает ошибка "Предполагается наличие окончания инструкции КОД 800А0401 Ошибка компиляции. Номер строчки и символа указывает на то что ему не нравится что параметр oper остается открытым. как это дело исправить ? |
|
Отправлено: 14:29, 03-11-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата aBBat2:
Скрытый текст
Option Explicit Dim objFSO Dim i Dim strPath Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") With WScript.CreateObject("WScript.Shell") .Run "%SystemRoot%\notepad.exe" WScript.Sleep 1000 For i = 1 To 32 strPath = "G:\работа\easyport\32 изи порта\easyport" & CStr(i) & ".exe" If objFSO.FileExists(strPath) Then .Run """" & strPath & """", 1, False Else WScript.Echo "Can't find file [" & strPath & "]." End If Next End With Set objFSO = Nothing WScript.Quit 0 Цитата aBBat2:
Скрытый текст
Option Explicit Dim objFSO Dim i Dim strPath Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") With WScript.CreateObject("WScript.Shell") .Run "%SystemRoot%\notepad.exe" WScript.Sleep 1000 For i = 1 To 32 strPath = "G:\работа\easyport\32 изи порта\easyport" & CStr(i) & ".exe" If objFSO.FileExists(strPath) Then .Run """" & strPath & """ oper ""USSD1""", 1, False Else WScript.Echo "Can't find file [" & strPath & "]." End If Next End With Set objFSO = Nothing WScript.Quit 0 |
||
Отправлено: 14:56, 03-11-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать Первый скрипт замечательно открывает все экземпляры программы.
А вот второй открывает примерно треть и выдает кучу ошибок http://shot.qip.ru/00fCB9-51a7On1cYB/ еще одну ошибку успел увидеть http://shot.qip.ru/00fCB9-51a7On1cYR/ |
Отправлено: 15:30, 03-11-2014 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата aBBat2:
Если речь про эту: Запуск программы EasyPort из командной строки и других приложений утилиту — то неудивительно: Вы же одновременно пытаетесь достучаться до одного псевдомодема из кучи запущенных приложений. |
|
Отправлено: 16:01, 03-11-2014 | #4 |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать Эмм я пытаюсь достучаться до одного из 32 двух реальных устройств , которое каждое на своем порту.
И я пробовал через пуск=выполнить открыть с десяток подряд не дожидаясь закрытия предыдущего приложения никаких ошибок не было . и в ручном режиме без скрипта тоже ошибка не возникает ![]() исходя из того что часть приложений таки успевают открыться , может быть можно в скрипте прописать таймаут между запусками ? хотябы самый минимальный. |
|
Отправлено: 16:06, 03-11-2014 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата aBBat2:
Цитата aBBat2:
|
||
Отправлено: 16:35, 03-11-2014 | #6 |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать Устройство gsm pool называется. Состоит из отдельных гсм модулей объединенных в общий пул .
http://shot.qip.ru/00fCB9-61a7On1cZr/ вот само устройство. Суть запроса oper "USSD1 это проверка номера активных в данный момент времени сим карт . USSD1 это сокращенный запрос который в полном виде выглядит как at+cusd=1,*110*10#,15 У каждого экземпляра программы есть свой файл конфиг с раширением .ini в котором прописан com порт на который идет обращение этого запроса. Эмм какие еще моменты нужно прояснить ? |
Отправлено: 18:13, 03-11-2014 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата aBBat2:
|
|
Отправлено: 19:01, 03-11-2014 | #8 |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать Может вернемся к вопросу как реализовать таймаут хоть небольшой между обращениями ?
|
Отправлено: 19:04, 03-11-2014 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Я бы на Вашем месте после изучения деталей поигрался с этим — Программы для мобильной связи:
Цитата:
Цитата aBBat2:
Вы и сами в состоянии вставить. Но это игра в орлянку. |
||
Отправлено: 19:05, 03-11-2014 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2008 R2 - Не воспринимает расширение IE8 | alexdomovoi | Windows Server 2008/2008 R2 | 0 | 10-02-2014 11:13 | |
Разное - Не воспринимает кодировку клавиатуры | deBrajelon | Microsoft Windows 7 | 1 | 12-09-2013 11:26 | |
Разное - Не воспринимает легальный ключ. | VitAl2013 | Лицензирование продуктов Microsoft | 1 | 24-12-2010 02:44 | |
Интернет - не воспринимает пароли к сайтам в интернет | kasperq1 | Microsoft Windows Vista | 3 | 25-04-2010 09:05 | |
[решено] ошибка Oper'ы | scraches | Программное обеспечение Windows | 9 | 16-05-2008 23:04 |
|