Имя: Пароль:
1C
1C 7.7
v7: Подскажите, почему не закрывается окно сообщений
0 qazokm
 
14.04.15
05:22
код после вывода сообщений
Wsh =  СоздатьОбъект("Wscript.shell");
Wsh.SendKeys("^+z");  
Wsh.SendKeys("^+я");  
окно сообщений не закрывается, хотя нажимая клавиши ctrl shift z, в предприятии окно закрывается, может как-то активировать надо окно или ещё какие варианты есть?
1 vsy
 
14.04.15
05:40
Вот так все закрывается, проверено.
Wsh = СоздатьОбъект("Wscript.shell");
Wsh.SendKeys("+^Z");
2 qazokm
 
14.04.15
06:01
Я Вам верю, но даже поставив сточку Wsh.SendKeys("+^Z");, окно все равно не закрылось, вот я и думаю, во всех инет источниках приводится этот код, но почему-то во внешней обработке на 7.7 не срабатывает, может там библиотека(VTOOLS) переопределяет что-нибудь... не могу догадаться...
3 ADirks
 
14.04.15
13:46
SendKeys отстой, SendMessage рулит

Процедура ЗакрытьОкноСообщений()
    svcsvc = СоздатьОбъект("Svcsvc.Service");
    Сообщить(""+svcsvc.GetProcessWindow());
    
    Скрипт = СоздатьОбъект("MSScriptControl.ScriptControl");
    Скрипт.Language = "JScript";
    Стр = "
    |function HideMessageWindow()
    |{
    |    var WM_COMMAND =  273;
    |    var cmdHideMessageWindow = 32812;
    |
    |    var svcsvc = new ActiveXObject('Svcsvc.Service');
    |    var Wrapper = new ActiveXObject('DynamicWrapper');
    |
    |    Wrapper.Register('USER32.DLL', 'SendMessage', 'I=llll', 'f=s', 'r=l');
    |    hwnd = svcsvc.GetProcessWindow();
    |    Wrapper.SendMessage(hwnd, WM_COMMAND, cmdHideMessageWindow, 0);
    |}
    |";
    Скрипт.AddCode(стр);    
    Код = Скрипт.Run("HideMessageWindow");
КонецПроцедуры
4 Джордж1
 
14.04.15
13:49
У меня есть в одной конфигурации открытие окна на полный экрана при старте
На каких-то компах срабатывает, на каких то нет