| 
    
        
     
     | 
    
  | 
Как узнать тип ОС клиента? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        iceman2112    
     22.10.15 
            ✎
    17:06 
 | 
         
        Сервер linux пользователи могут работать как под виндой и теперь ЕЩЕ И ПОД линукс
 
        Обработка печати выводить сертификаты, используя программу просмотра изображений на клиенте. Когда был клиент только винда было просто: ЗапуститьПриложение("Путь к ACDSee и пути и изображениям") Сейчас если клиент линукс нужно выполнять другую команду, как определить какой клиент?  | 
|||
| 
    1
    
        iceman2112    
     22.10.15 
            ✎
    17:06 
 | 
         
        у меня пока только идея через 
 
        Исключения делать  | 
|||
| 
    2
    
        Timon1405    
     22.10.15 
            ✎
    17:09 
 | 
         
        Если (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86) Или (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64) Тогда
 
        /Код по захвату мира КонецЕсли  | 
|||
| 
    3
    
        iceman2112    
     22.10.15 
            ✎
    17:12 
 | 
         
        Это тип СЕРВЕРА     
         | 
|||
| 
    4
    
        Живой Ископаемый    
     22.10.15 
            ✎
    17:14 
 | 
         
        да ладно!
 
        Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).  | 
|||
| 
    5
    
        iceman2112    
     22.10.15 
            ✎
    17:15 
 | 
         
        (4) Тогда скажи, как он на винде возвращет винду?     
         | 
|||
| 
    6
    
        Живой Ископаемый    
     22.10.15 
            ✎
    17:16 
 | 
         
        а что он должен возвращать?     
         | 
|||
| 
    7
    
        iceman2112    
     22.10.15 
            ✎
    17:16 
 | 
         
        ой, в смысле линукс     
         | 
|||
| 
    8
    
        Cyberhawk    
     22.10.15 
            ✎
    17:17 
 | 
         
        Смотри как в подсистеме БСП "ПрисоединенныеФайлы" (или "РаботаСФАйлами") сделано     
         | 
|||
| 
    9
    
        iceman2112    
     22.10.15 
            ✎
    17:17 
 | 
         
        ТомаХранения да?     
         | 
|||
| 
    10
    
        Живой Ископаемый    
     22.10.15 
            ✎
    17:18 
 | 
         
        2(7) потому что ты выполнеяшь этот код на стороне сервера. Выполняй на стороне клиента, и передавай на сервер через хранилище значения, если тебе нужно анализировать ОС клиента на сервере     
         | 
|||
| 
    11
    
        iceman2112    
     22.10.15 
            ✎
    17:18 
 | 
         
        (8) там берется через (СистемнаяИнформация.ТипПлатформы) который возвращет линукс     
         | 
|||
| 
    12
    
        iceman2112    
     22.10.15 
            ✎
    17:18 
 | 
         
        (10) ну ка ща     
         | 
|||
| 
    13
    
        Cyberhawk    
     22.10.15 
            ✎
    17:18 
 | 
         
        (11) Вот тебе дарю кусок:
 
        Если (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86) Или (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64) Тогда // Для Windows выполняем запуск через cmd.exe (для перенаправления stdout и stderr). КоманднаяСтрока = "cmd /c " + " """ + КоманднаяСтрока + """"; #Если Сервер Тогда ЗапуститьПриложение(КоманднаяСтрока, КаталогИсполняемыхФайловПлатформы(), Истина); #Иначе // Для Windows-клиента используем Wscript.Shell, чтобы избежать появления окон с cmd. Оболочка = Новый COMОбъект("Wscript.Shell"); Оболочка.Run(КоманднаяСтрока, 0, Истина); #КонецЕсли Иначе // Для ОС Linux просто запускаем команду. ЗапуститьПриложение(КоманднаяСтрока, КаталогИсполняемыхФайловПлатформы(), Истина); КонецЕсли;  | 
|||
| 
    14
    
        iceman2112    
     22.10.15 
            ✎
    17:19 
 | 
         
        (10) я тупой. Вопрос закрыт     
         | 
|||
| 
    15
    
        Cyberhawk    
     22.10.15 
            ✎
    17:19 
 | 
         
        И еще: // Возвращает Истина, если клиентское приложение запущено под управлением ОС Linux.
 
        // // Возвращаемое значение: // Булево. Если нет клиентского приложения, возвращается Ложь. // Функция ЭтоWindowsКлиент() Экспорт СистемнаяИнформация = Новый СистемнаяИнформация; ЭтоWindowsКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; Возврат ЭтоWindowsКлиент; КонецФункции  | 
|||
| 
    16
    
        Живой Ископаемый    
     22.10.15 
            ✎
    17:20 
 | 
         
        2(14) я тупее, я вообще про эту штуку не знал. Вот из ветки узнал (имею в виду СистемнаяИнформация)     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |