|
как программно определить, запущена ли 1С в режиме польз | ☑ | ||
---|---|---|---|---|
0
Adgjj
17.11.11
✎
14:29
|
Скажите, пжл, как программно определить, запущена ли 1С в режиме польз?
|
|||
1
PR
17.11.11
✎
14:30
|
Нужн получ спис поль и если он пус, то нико не
|
|||
2
Adgjj
17.11.11
✎
14:30
|
спс
|
|||
3
PR
17.11.11
✎
14:30
|
акти поль имеетс в ви
|
|||
4
Adgjj
17.11.11
✎
14:31
|
спс, а метод не помните?
|
|||
5
Rovan
гуру
17.11.11
✎
14:32
|
(4) мож ИмяПольз()
|
|||
6
zbv
17.11.11
✎
14:32
|
фот!
|
|||
7
Adgjj
17.11.11
✎
14:32
|
спасибо ))
|
|||
8
PR
17.11.11
✎
14:32
|
СП помнит.
Не забудь про всякие консоли, регламентные задания, конфигуратор и прочую хрень. |
|||
9
Wobland
17.11.11
✎
14:33
|
(6) она вредная, она не даст
|
|||
10
apokrit
17.11.11
✎
14:33
|
Почему тут нет кнопки - голосовать за закрытие темы?
|
|||
11
Adgjj
17.11.11
✎
14:33
|
(8) почему не забывать?
|
|||
12
PR
17.11.11
✎
14:33
|
(10) Ты только что проголовал
|
|||
13
Живой Ископаемый
17.11.11
✎
14:33
|
то ес мы во прям из нашег сеанс хоти узна - а выполняетс ли это во самы код, который выполняетс?
|
|||
14
PR
17.11.11
✎
14:34
|
(11) Потому что сеанс конфигуратора — это не сеанс в режиме 1С:Предприятия. Как и консоль кластера, регламентные задания и т. д.
|
|||
15
Adgjj
17.11.11
✎
14:34
|
Здравствуйте, Живой Ископаемый!
|
|||
16
Adgjj
17.11.11
✎
14:35
|
(14) надо только в режиме предприятия
|
|||
17
Живой Ископаемый
17.11.11
✎
14:36
|
2(16) вам не кажется ли, что если вы программно что-то выполняется, то это уже выполняется в предприятии, и стало быть 1С запущена в режиме пользователя?
|
|||
18
Adgjj
17.11.11
✎
14:38
|
мне не кажется, точно в режиме пользователя
|
|||
19
Живой Ископаемый
17.11.11
✎
14:39
|
2(18) ну, так что же еще вы хотите узнать? :)
|
|||
20
Живой Ископаемый
17.11.11
✎
14:40
|
хотите изобрести настоящий искусственный интеллект - чтобы программа обладала рефлексией и думала над вопросом "А существую ли я на самом деле? Или просто снюсь бабочке?"
|
|||
21
Adgjj
17.11.11
✎
14:43
|
да я все обмен мучаю...
|
|||
22
5 Элемент
17.11.11
✎
14:58
|
МассивСоединений = ПолучитьСоединенияИнформационнойБазы() ;
|
|||
23
Adgjj
18.11.11
✎
13:03
|
(22) спасибо, но не помогло для моей задачи
из батника закрываю 1с: TaskKill /IM 1cv8.exe закрывает после того, как спрашивает закрывать или нет а надо, чтоб закрылся без диалогового окна |
|||
24
Sangenytch
18.11.11
✎
13:08
|
2 (23) ну не знаю у меня безо всяких закрывает все окна 1с
|
|||
25
Живой Ископаемый
18.11.11
✎
13:10
|
2(23) это оттого что нужно писать tskill:
tskill 1Cv8* /A |
|||
26
Живой Ископаемый
18.11.11
✎
13:11
|
но это сработает только в том случае если у вас все пользователи работают в терминале
|
|||
27
Живой Ископаемый
18.11.11
✎
13:21
|
но самое смешное что этот код закроет и ваш сеанс тоже... а вам так нужно?
|
|||
28
Живой Ископаемый
18.11.11
✎
13:23
|
taskkill в этом плане более универсальная - позволит завершить процессы и на удаленных компах, но вам нужно знать имена компов на которых работают ваши пользователи
|
|||
29
Живой Ископаемый
18.11.11
✎
13:24
|
TaskKill /F /IM 1cv8.exe
|
|||
30
Adgjj
18.11.11
✎
13:31
|
Здравствуйте, Живой Ископаемый!
Перед обменом нужно, как я понимаю, чтобы пользователей в базе не было. Как раз мое 1сПредприятие (польз "obmen") я и спрашиваю как закрыть (это к (26)). У нас пользователи не в терминале работают и я тоже, спасибо, учту. Сейчас попробую сделать, как Вы советуете. |
|||
31
Adgjj
18.11.11
✎
13:34
|
tskill 1Cv8* /A - так ничего не сделалось
|
|||
32
Adgjj
18.11.11
✎
13:35
|
TaskKill /F /IM 1cv8.exe - закрылось без вопроса, спасибо Вам огромное
|
|||
33
Stim213
18.11.11
✎
13:35
|
доб.те фотк в лк
|
|||
34
Adgjj
18.11.11
✎
13:39
|
Другой вопрос:
почему если запускаю такой батник "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf один раз, жду когда выполнится, запускаю второй раз получаю один результат а при запуске батника (1 раз) "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf другой результат? |
|||
35
Живой Ископаемый
18.11.11
✎
13:39
|
наша задача состоит в том, чтобы угадать какой результат в каком случае? призы будут?
|
|||
36
Adgjj
18.11.11
✎
13:53
|
в случае1 выполняется то, чего хотелось - в периф базу загружается xml-файл (конф и данные)
во 2 случае только код в кону загружается, и даже из конф для обновления 1сПредпр не запускается - остается "!" в конф-ре |
|||
37
Живой Ископаемый
18.11.11
✎
13:55
|
что такое "только код"? сообщение одно и тоже или разные?
|
|||
38
Adgjj
18.11.11
✎
13:59
|
"только код" - это я после выполнения случая2 захожу в конфигуратор и вижу что код заменился на новый и стоит в окне конф-ра "!"; те видимо сработала только первая строка батника,
"только код" - данные не загрузились |
|||
39
Adgjj
18.11.11
✎
13:59
|
сообщений нет
|
|||
40
Adgjj
18.11.11
✎
14:00
|
сейчас вышло сообщения что ошибка в скрипте, используемом в обработке Obmen.epf
|
|||
41
Живой Ископаемый
18.11.11
✎
14:03
|
что такое код? код чего?
|
|||
42
Живой Ископаемый
18.11.11
✎
14:03
|
2(40) мучайтесь дальше... никто вас такую без фотки не пожалеет
|
|||
43
Adgjj
18.11.11
✎
14:05
|
код - это код программы 1С в ее конфигураторе
|
|||
44
Живой Ископаемый
18.11.11
✎
14:06
|
я это уже объяснял в одной из позапрошлых веток.. с тех пор причина та же
|
|||
45
Adgjj
18.11.11
✎
14:08
|
я прошу помочь, а не пожалеть
(44) я не поняла, скажите, пжл, еще 1 раз, если не затруднит |
|||
46
Живой Ископаемый
18.11.11
✎
14:12
|
если в файле сообщения обмена есть данные и конфигурация, то при запуске обмена РИБ загружаются только изменения конфы, то есть метаданных - данные загружены не будут, потому что потенциально они могут быть уже для измененной конфы... Поэтому после первого обмена нужно зайти в конфигуратор и принять эти изменения. и после этого запустить в режиме предприятия обмен второй раз - ну просто представьте что вы выполняете этот обмен вручную.. и во второй раз уже загрузятся данные.
2(45) нет, не просите вы помочь.. вы сообщаете ничего не значащие замечания о работе какого-то припадочного скрипта. |
|||
47
Adgjj
18.11.11
✎
14:13
|
припадочного скрипта))
|
|||
48
Живой Ископаемый
18.11.11
✎
14:17
|
Кстати, в (30) - предположение "Перед обменом нужно, как я понимаю, чтобы пользователей в базе не было" - абсолютно ложное... могут быть. Пользователей быть не должно только в том случае, если пришли изменения конфы, при чем такие, которые меняют структуру. Если же просто поменялся код модуля - то пусть будут, ничего страшного нет
|
|||
49
Adgjj
18.11.11
✎
14:18
|
я уже весь код опубликовала в одной из прошлых веток:
Процедура ОбновитьКонфигурацию() Экспорт МассивСоединений=ПолучитьСоединенияИнформационнойБазы(); Если МассивСоединений.Количество()>1 Тогда Возврат; // ждем дальше... КонецЕсли; СтрокаСоединения=СтрокаСоединенияИнформационнойБазы(); ПутьКСкрипту=КаталогВременныхФайлов()+"obmen.vbs"; Скрипт=Новый ЗаписьТекста(ПутьКСкрипту,КодировкаТекста.ANSI); Скрипт.ЗаписатьСтроку("WScript.Sleep 5000"); // на всякий случай Скрипт.ЗаписатьСтроку("Set WshShell=CreateObject(""WScript.Shell"")"); Команда=""""""+КаталогПрограммы()+"1CV8.EXE"""" CONFIG"+?(НСтр(СтрокаСоединения,"File")<>""," /F "+НСтр(СтрокаСоединения,"File")," /S "+НСтр(СтрокаСоединения,"Srvr")+"\"+НСтр(СтрокаСоединения,"Ref"))+" /N Obmen /P Obmen /UpdateDBCfg"; Скрипт.ЗаписатьСтроку("ReturnCode=WshShell.Run("""+Команда+""",1,1)"); //открыть конфигуратор Скрипт.ЗаписатьСтроку("If ReturnCode=0 Then"); // если обновились удачно, то пытаемся дочитать сообщение Скрипт.ЗаписатьСтроку("WshShell.Run """+Команда+""",1,0"); //Скрипт.ЗаписатьСтроку("WshShell.Run """+Команда+""",1,1"); //Скрипт.ЗаписатьСтроку("WScript.Sleep 5000"); //WshShell.Run(cmd, [windowStyle], [waitOnReturn]) //Параметр waitOnReturn представляет собой булево значение, которое указывает должен ли сценарий ждать перед выполнением следующий команды. Скрипт.ЗаписатьСтроку("End If"); Скрипт.ЗаписатьСтроку("Set FSO=CreateObject(""Scripting.FileSystemObject"")"); Скрипт.ЗаписатьСтроку("Set File=FSO.GetFile(WScript.ScriptFullName)"); Скрипт.ЗаписатьСтроку("File.Delete"); //скрипт сам себя удаляет Скрипт.Закрыть(); ЗапуститьПриложение(ПутьКСкрипту); //запустить скрипт, записанный выше //ЗапуститьПриложение(ПутьКСкрипту,,Истина); //скрипт открывает предпр (подождите) сообщить("1сПредприятие запустилось"); ЗавершитьРаботуСистемы(Ложь); КонецПроцедуры |
|||
50
Adgjj
18.11.11
✎
14:19
|
это не весь код ошибочка
|
|||
51
Живой Ископаемый
18.11.11
✎
14:19
|
2(49) да что вы говорите... вы серьезно думаете что кто-то будет следить за последней версией отлаживаемого вами кода? всем плевать на него.
|
|||
52
Adgjj
18.11.11
✎
14:20
|
(51) я не сомневалась никогда в этом))
|
|||
53
Adgjj
18.11.11
✎
14:21
|
(48) спасибо, не знала
|
|||
54
Живой Ископаемый
18.11.11
✎
14:21
|
(52)но ведете себя так, как будто предполагаете что все в курсе на какой именно строчке у вас сейчас ошибка.. у вас шаблончик не рвется от такой разницы в отношении и поведении?
|
|||
55
Adgjj
18.11.11
✎
14:58
|
(46) спасибо, я это еще в Ваше предыд. объяснение поняла
не ясно следующее: если в батнике одна строка и батник запускаю дважды то 1 результат если в батнике таже самая строка 2 раза написана и батник запускаю 1раз - другой результат |
|||
56
Adgjj
18.11.11
✎
14:59
|
(55) по-моему результат в обиох случаях должен быть один
|
|||
57
Живой Ископаемый
18.11.11
✎
15:01
|
2(55) у вас вторая строка батника дожидается окончания выполнения приложения запущенного первой строкой?
|
|||
58
Adgjj
18.11.11
✎
15:06
|
видимо нет, т.е. нужно в батнике как-то определять, что первая строка закончила свою работу?
если в батнике написано "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf TaskKill /F /IM 1cv8.exe и этот батник запускаю дважды все работает как надо, и без ожидания почему-то |
|||
59
Живой Ископаемый
18.11.11
✎
15:07
|
2(58) ну так а чего вы придуриваетесь что не видите разницы?
читайте до посинения: Запуск указанной программы или команды в отдельном окне. START ["заголовок"] [/Dпуть] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME| /ABOVENORMAL | /BELOWNORMAL] [/WAIT] [/B] [команда/программа] [параметры] "заголовок" Заголовок окна. путь Рабочий каталог. B Запуск приложения без создания нового окна с отключением обработки сочетания клавиш ^C. Если приложение не обрабатывает сочетание клавиш ^C самостоятельно, единственным способом его прерывания является использование сочетания клавиш ^Break. I Новой средой станет исходная среда, переданная cmd.exe, а не текущая среда. MIN Запуск команды/программы в свернутом окне. MAX Запуск команды/программы в развернутом окне. SEPARATE Запуск 16-разрядной программы Windows в отдельной области памяти. SHARED Запуск 16-разрядной программы Windows в общей области памяти. LOW Запуск приложения с приоритетом IDLE. NORMAL Запуск приложения с приоритетом NORMAL. HIGH Запуск приложения с приоритетом HIGH. REALTIME Запуск приложения с приоритетом REALTIME. WAIT Запуск приложения с ожиданием его завершения. ABOVENORMAL Запуск приложения с классом приоритета ABOVENORMAL BELOWNORMAL Запуск приложения с классом приоритета BELOWNORMAL команда/программа Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Если это не внутренняя команда cmd.exe и не пакетный файл, значит, это программа, которая будет запущена в графическом или текстовом окне. параметры Параметры, передаваемые команде/программе. Изменения вызова внешних команд из командной строки или с помощью команды START при включении расширенной обработки команд: Для вызова неисполняемых файлов через механизм сопоставления типов файлов достаточно просто ввести имя файла в командной строке. Например, команда WORD.DOC запускает приложение, сопоставленное расширению имени файла .DOC. Сведения о создании подобных сопоставлений из пакетных файлов приведены в описаниях команд ASSOC и FTYPE. При запуске 32-разрядного приложения с графическим интерфейсом пользователя обработчик команд CMD.EXE не ожидает завершения работы приложения перед возвратом к приглашению командной строки. Подобное новое поведение НЕ относится к запуску приложений из пакетных файлов. При выполнении командной строки, первым элементом которой является текстовая строка "CMD" без расширения имени файла или указания пути, она заменяется значением переменной COMSPEC. Это предотвращает запуск CMD.EXE из текущей активной папки, если таковая программа там имеется. Если первый элемент командной строки не содержит расширения имени файла, обработчик команд CMD.EXE использует значение переменной среды PATHEXT, чтобы определить расширения имен исполняемых файлов и порядок поиска нужного файла. По умолчанию для переменной PATHEXT задается значение: .COM;.EXE;.BAT;.CMD Обратите внимание, что этот синтаксис подобен синтаксису для переменной PATH, то есть отдельные элементы разделяются точкой с запятой. Если при поиске исполняемого файла нет соответствия ни одному из расширений, выполняется проверка соответствия указанного имени папки. Если имя папки соответствует указанному, то команда START запускает EXPLORER для этого пути. Если такое действие выполняется из командной строки, то оно эквивалентно выполнению команды CD /D для указанного пути. |
|||
60
Живой Ископаемый
18.11.11
✎
15:07
|
про ключ /WAIT
|
|||
61
Живой Ископаемый
18.11.11
✎
15:10
|
2(58) "и этот батник запускаю дважды все работает как надо, и без ожидания почему-то" - то есть вы не дожидаетесь самостоятельно окончания работы батника первый раз, второй раз сразу же запускаете? или все же дожидаетесь?
|
|||
62
Adgjj
18.11.11
✎
15:18
|
(61) ВЫ ПРАВЫ ДОЖИДАЮСЬ СПАСИБО
/WAIT Я КОГДА-ТО ПРОБОВАЛА СЕЙЧАС ЕЩЕ ПОПРОБУЮ ПОСТАВИТЬ ЕГО К 1ВОЙ СТРОКЕ |
|||
63
Живой Ископаемый
18.11.11
✎
15:18
|
фу такой громкой и крашеной быть
|
|||
64
Adgjj
18.11.11
✎
15:20
|
Я ТИХО ГОВОРЮ И НЕ КРАШУСЬ)) просто капс лок нажат был
|
|||
65
Живой Ископаемый
18.11.11
✎
15:20
|
это и означает быть громкой и крашеной блондинкой на форуме.
|
|||
66
Adgjj
18.11.11
✎
15:26
|
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/WAIT/Execute Obmen.epf
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf TaskKill /F /IM 1cv8.exe в моих руках не сработала наверно WAIT не там указала |
|||
67
Живой Ископаемый
18.11.11
✎
15:27
|
ой как интересно... и в каком же месте первой строки мы видим команду start?
|
|||
68
Живой Ископаемый
18.11.11
✎
15:29
|
кстати и во второй строке также надо и start и /wait иначе третья ваша команда сразу зарубит 1Сv8.exe только что запущенный второй командой...
|
|||
69
Adgjj
18.11.11
✎
15:29
|
START "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/WAIT/Execute Obmen.epf
написал не удалось найти ENTERPRISE |
|||
70
Живой Ископаемый
18.11.11
✎
15:31
|
2(69) я даже уже и не знаю какими словами мне еще выразить - что всем на это плевать... и никто вас не пожалеет за то что вы не смогли вчитаться в вывод команды START /? и попробовать по разному кавычки и т.д. и т.п.
|
|||
71
Живой Ископаемый
18.11.11
✎
15:34
|
обращайте внимание на примеры которые можно найти в сети:
http://www.msfn.org/board/topic/47461-does-start-wait-work/ start /wait c:\blah.cmd start /wait "this is my title" c:\blah.cmd start /wait "title title" "c:\blah.cmd" start /wait "" c:\blah.cmd |
|||
72
Живой Ископаемый
18.11.11
✎
15:35
|
но мне кажется все равно у вас ничего не выйдет.. вы с кавычками не дружите.
|
|||
73
Adgjj
18.11.11
✎
15:35
|
спасибо)), а в прошлый раз у меня с кавычками получилось
|
|||
74
Живой Ископаемый
18.11.11
✎
15:37
|
но ДО прошлого раза было еще 10 раз когда не получилось.. сейчас также будет...
Но.. попытайтесь меня удивить |
|||
75
Adgjj
18.11.11
✎
15:39
|
рада стараться
|
|||
76
Adgjj
18.11.11
✎
15:51
|
start /wait "" /DisableStartupMessages/WAIT/Execute Obmen.epf" C:\Program Files\1cv81\bin\1cv8.exe ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf первая строка выполняется а вторая нет |
|||
77
Adgjj
18.11.11
✎
15:51
|
кавычка лишняя
|
|||
78
Adgjj
18.11.11
✎
15:52
|
вообще не то я этого не писала
|
|||
79
Живой Ископаемый
18.11.11
✎
15:53
|
о боги...
|
|||
80
Snorkler
18.11.11
✎
16:00
|
(79) И ведь хоть бы маленькую моральную компенсацию в виде фото…
Не судьба-с… :0) |
|||
81
Живой Ископаемый
18.11.11
✎
16:01
|
Напишите в батнике такое:
Dear computer Santa! I want you to acomplish my wish, but, I'm not able to express it properly. So, let's come to an agreement - i just put some words, and you feel free to combine them in a way, whichever you want. Ok, here these words: start wait DisableStartupMessages WAIT Execute Obmen.epf "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen And don't forget - I want you to accomplish my wish twice, deal? |
|||
82
Живой Ископаемый
18.11.11
✎
16:01
|
толку будет больше
|
|||
83
Adgjj
18.11.11
✎
16:04
|
start /wait "" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf TaskKill /F /IM 1cv8.exe |
|||
84
Живой Ископаемый
18.11.11
✎
16:08
|
у меня ограничение на 60 сообщений в день.. я уже написал 55.
|
|||
85
Adgjj
20.11.11
✎
10:12
|
start /wait "1C" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf - все равно не ждет
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf TaskKill /F /IM 1cv8.exe |
|||
86
Adgjj
20.11.11
✎
10:17
|
||||
87
Adgjj
20.11.11
✎
10:22
|
start "Запускаем 1C..." /d "C:\Program Files\1cv81\bin" /wait "1cv8.exe Enterprise /F C:\UAT8_les_KOT /N obmen /P obmen /Execute Obmen.epf /DisableStartupMessages"
Рез-т: не удалось найти 1cv8.exe Enterprise /F C:\UAT8_les_KOT /N obmen /P obmen /Execute Obmen.epf /DisableStartupMessages видимо с внешней обработкой не так пишется |
|||
88
Adgjj
20.11.11
✎
10:35
|
а зачем в v8: Запуск 8.2 из командной строки в (6) значок Enterprise
|
|||
89
Adgjj
20.11.11
✎
10:35
|
это пробел так отобразился?
|
|||
90
Adgjj
20.11.11
✎
10:49
|
start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
start "" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf rem "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf TaskKill /F /IM 1cv8.exe выполнеяет только 1-ю строку батника |
|||
91
Живой Ископаемый
20.11.11
✎
12:04
|
у второй строки тоже должен быть вэйт.. иначе процесс ею запущенный сразуже убивается тертьей...
|
|||
92
Живой Ископаемый
20.11.11
✎
12:04
|
как и было написано в (68)
|
|||
93
Живой Ископаемый
20.11.11
✎
12:06
|
вообще зачем вам третья строка?
|
|||
94
Adgjj
20.11.11
✎
13:10
|
у меня с 12-13 всегда интернета нет, спасибо, сейчас попробую
|
|||
95
Adgjj
20.11.11
✎
13:11
|
(68) я тогда не прочитала
|
|||
96
Adgjj
20.11.11
✎
13:21
|
Вот такой батник из 2-ходинаковых строк:
start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf строка1 выполняется, но 1с закрываю вручную - сама не закрывается. Видимо, "WAIT Запуск приложения с ожиданием его завершения." означает что следующая строка батника будет выполняться после завершения работы приложения, открытого предыд. строкой. После выполнения строки2 тоже 1с надо закрывать вручную, причем данные не перенеслись (в окне конфигуратора знак "!") |
|||
97
ДенисЧ
20.11.11
✎
13:27
|
"Видимо, "WAIT Запуск приложения с ожиданием его завершения." означает что следующая строка батника будет выполняться после завершения работы приложения, открытого предыд. строкой."
Да Вы гений... Точнее, @Гений1С ! |
|||
98
Adgjj
20.11.11
✎
13:30
|
ну потому что когда я вручную закрываю 1с, начинает выполняться дальше батник
|
|||
99
ДенисЧ
20.11.11
✎
13:32
|
то есть почитать хелп по start'у вам не позволяет женская гордость... female shovinist piggy!
|
|||
100
Adgjj
20.11.11
✎
13:33
|
до посинения читала (59)
|
|||
101
ДенисЧ
20.11.11
✎
13:35
|
"WAIT Запуск приложения с ожиданием его завершения."
Что это значит? Правильно, приложение само должно завершиться. А что для этого нужно? |
|||
102
Adgjj
20.11.11
✎
13:37
|
0_0
|
|||
103
Adgjj
20.11.11
✎
13:38
|
TaskKill /F /IM 1cv8.exe перестало помогать после использования start
|
|||
104
Adgjj
20.11.11
✎
13:40
|
Может ABOVENORMAL использовать...
|
|||
105
Adgjj
20.11.11
✎
13:41
|
т.е. не это а ключ K
|
|||
106
Adgjj
20.11.11
✎
13:42
|
почему же она сама не закрывается?
|
|||
107
Adgjj
20.11.11
✎
13:55
|
exit тоже не помог
|
|||
108
ДенисЧ
20.11.11
✎
13:57
|
А кто ей сказал, что нужно закрываться? ЗавершитьРаботуСистемы() есть в обработке?
|
|||
109
Adgjj
20.11.11
✎
14:05
|
1. раскомментировала, теперь вручную ничего не нужно закрывать, спасибо огромное
2. данные не обновляются (при открытии периф. базы, куда xml-файл загружался этими двумя строчками пишет: конф-я базы данных не соответствует сохраненной конфигурации) |
|||
110
Adgjj
20.11.11
✎
14:11
|
потому что при выполнении строки предприятие один раз открылось, внешняя обработка стала загружать xml-файл обмена и тут ее прикрыли...
|
|||
111
Adgjj
20.11.11
✎
14:13
|
пришли к началу: не ждет, пока полностью выполнится первая строка
|
|||
112
Adgjj
20.11.11
✎
14:19
|
наверно только паузой в батнике ждать
|
|||
113
Живой Ископаемый
20.11.11
✎
14:42
|
опухоль не операбельна
|
|||
114
Dethmont
20.11.11
✎
14:44
|
(113) =)
|
|||
115
ДенисЧ
20.11.11
✎
14:45
|
(113) это не опухоль... Это мозг такой...
|
|||
116
Живой Ископаемый
20.11.11
✎
14:46
|
чорд... мы резали мозг... мы ее потреяем.
|
|||
117
Adgjj
20.11.11
✎
16:28
|
да, я не понимаю: предприятие запустилось первой строкой батника, скрипт выдал, что конф тоже запустился (правда я этого не видела)
Процедура ОбновитьКонфигурацию() Экспорт МассивСоединений=ПолучитьСоединенияИнформационнойБазы(); Если МассивСоединений.Количество()>1 Тогда Возврат; // ждем дальше... КонецЕсли; СтрокаСоединения=СтрокаСоединенияИнформационнойБазы(); //Пример результата метода: File="C:\1cv8\Base". ПутьКСкрипту=КаталогВременныхФайлов()+"obmen.vbs"; Скрипт=Новый ЗаписьТекста(ПутьКСкрипту,КодировкаТекста.ANSI); Скрипт.ЗаписатьСтроку("WScript.Sleep 5000"); // на всякий случай Скрипт.ЗаписатьСтроку("Set WshShell=CreateObject(""WScript.Shell"")"); Команда=""""""+КаталогПрограммы()+"1CV8.EXE"""" CONFIG"+?(НСтр(СтрокаСоединения,"File")<>""," /F "+НСтр(СтрокаСоединения,"File")," /S "+НСтр(СтрокаСоединения,"Srvr")+"\"+НСтр(СтрокаСоединения,"Ref"))+" /N Obmen /P Obmen /UpdateDBCfg"; Скрипт.ЗаписатьСтроку("ReturnCode=WshShell.Run("""+Команда+""",1,1)"); //открыть конфигуратор Скрипт.ЗаписатьСтроку("WScript.Echo(""открыт конфигуратор"")"); //ПОЯВИЛОСЬ Скрипт.ЗаписатьСтроку("If ReturnCode=0 Then"); // если обновились удачно, то пытаемся дочитать сообщение Команда=""""""+КаталогПрограммы()+"1CV8.EXE"""" ENTERPRISE"+?(НСтр(СтрокаСоединения,"File")<>""," /F "+НСтр(СтрокаСоединения,"File")," /S "+НСтр(СтрокаСоединения,"Srvr")+"\"+НСтр(СтрокаСоединения,"Ref"))+" /N Obmen /P Obmen"; Скрипт.ЗаписатьСтроку("WshShell.Run """+Команда+""",1,0"); Скрипт.ЗаписатьСтроку("WScript.Echo(""открыт ENTERPRISE"")"); //НЕ ПОЯВИЛОСЬ Скрипт.ЗаписатьСтроку("End If"); Скрипт.ЗаписатьСтроку("Set FSO=CreateObject(""Scripting.FileSystemObject"")"); Скрипт.ЗаписатьСтроку("Set File=FSO.GetFile(WScript.ScriptFullName)"); Скрипт.ЗаписатьСтроку("File.Delete"); Скрипт.Закрыть(); ЗапуститьПриложение(ПутьКСкрипту); // ЗавершитьРаботуСистемы(Ложь); //Ложь - не выдавать сообщение "Закрыть программу?" КонецПроцедуры |
|||
118
Adgjj
20.11.11
✎
18:40
|
как без паузы, если
при запуске батника start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf 2 раза с небольшим промежутком (пока курсор промелькается) все загружается а при запуске батника start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf данные не перенеслись из файла обмена? |
|||
119
Adgjj
20.11.11
✎
19:28
|
с паузой получилось с батником:
@set @x=0 /* @echo off start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf cscript //nologo /e:jscript "%~f0" 200000 start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf goto:eof */ if(isFinite(WScript.Arguments(0))) WScript.Sleep(WScript.Arguments(0)) Паузу взяла отсюда: http://forum.ru-board.com/topic.cgi?forum=62&topic=11825&start=1300#6 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |