Имя: Пароль:
1C
1C 7.7
v7: КомандаСистемы() в фоновом режиме?
0 Gugolovski
 
28.03.18
06:36
Может кто подскажет, командную строку можно в фоновом режиме запустить, чтобы пользователи 1С не видели мигающих черных окон?
1 Вася Теркин
 
28.03.18
06:39
Чего тебе надобно, старче?
2 ildary
 
28.03.18
07:10
(0) запускать через какой-нибудь vbs?
3 DrZombi
 
гуру
28.03.18
07:15
(0) Можно на сервере запустить, через фоновое задание.
4 DrZombi
 
гуру
28.03.18
07:16
+ Огласите лучше, что вы выполняете в "КомандаСистемы"?
Для какой цели, что в итоге хотели получить?
5 Gugolovski
 
28.03.18
07:45
Например, процедура:
Процедура пинг()
КомандаСистемы("cd c:\123 && ping 192.168.2.1 > 1.txt");
КонецПРоцедуры

Запуская это из 1С видно как открывается окно командной строки, что-то исполняется. Но эти черные окна выглядят не эстетично.
6 Вася Теркин
 
28.03.18
08:17
эхо офф
7 nicesc
 
28.03.18
08:19
Объект = СоздатьОбъект("wscript.shell");
ФС.УстТекКаталог("D:\Ruby\Other\");
Результат = Объект.Run("ruby D:\Ruby\Other\test.rb", 0, 1);    Если Результат = 0 Тогда
  Сообщить("Всё ок.");
Иначе        
  Сообщить("Ошибка.");    
КонецЕсли;
8 Gugolovski
 
28.03.18
08:22
(7) а этот путь D:\Ruby\Other\, куда должен лежать?
Если у меня нет диска D:
9 nicesc
 
28.03.18
08:25
Объект = СоздатьОбъект("wscript.shell");
ФС.УстТекКаталог("c:\123\");
Результат = Объект.Run("ping 192.168.2.1 > 1.txt", 0, 1);
10 Gugolovski
 
28.03.18
08:37
Обрабатывается условие "Если Результат = 1". Сообщение "Ошибка." и файл 1.txt не записывается
11 nicesc
 
28.03.18
08:41
Это из-за > 1.txt. Нужно передать команду cmd:
Результат = Объект.Run("cmd /c ping 192.168.0.1 > 1.txt", 0, 1);
12 Gugolovski
 
28.03.18
08:51
(11)
Да, так файл записан, но запись этого небольшого файла заняла 15+ сек. И под конец выдало Сообщить("Ошибка.")   хотя повторюсь  - реально 1.txt есть. 15 сек это конечно через-чур
13 Сияющий в темноте
 
28.03.18
08:54
А прочитать вывод после завершения не судьба?

кроме того,например,средствами php пинг делается с дополнительными возможностями,а чеиез Wmi тоже можно много чего сделать,и не фиг окна открывать
14 Попытка1С
 
28.03.18
08:58
15 nicesc
 
28.03.18
09:09
(12)
Запись файла не могла длиться 15 секунд. Это ping долго опрашивает хост. Может быть вместо своего IP 192.168.2.1 стоит IP из моего примера? (192.168.0.1)
16 Gugolovski
 
28.03.18
09:20
(15) точно
17 Gugolovski
 
28.03.18
09:41
(15) спасибо)
18 Vladal
 
28.03.18
12:24
(6) echo off спасет только от отображения самих команд.
А собачка в начале строки только от отображения команды той строки.