RegsvrEx

Публикация № 14418

Администрирование - Администрирование данных 1С - Сервисные утилиты

Альтернатива регистратору regsvr32. Позволяет зарегистрировать компонент под текущим пользователем (при этом не нужны права админа)
Всем кто с ОЛЕ-компонентами сталкивался, знакома утилита regsvr32. Именно с нее начинается использование новой компоненты :). Но вот беда - на системах после win2000 (точнее, после NT) для регистрации компоненты необходимо обладать правами админа. А как было бы удобно: положил ДЛЛку в каталог базы, 1Ска при запуске попробовала создать объект, не удалось - зарегистрировала компоненту и пробует снова. Но нет - нужно пройтись по всем рабочим станциям, и позапускать регистратор под админом. Что, согласитесь, не всегда удобно.
Моя утилита - RegsvrEx - позволяет частично обойти эту проблему. А именно: регистрировать компоненту не для системы в целом, а только для текущего пользователя. Естественно, в этом случае под остальными пользователями компонента работать не будет (пока ее и под ними тоже не зарегистрировать), но зато для данной операции пользовательских прав достаточно.
Утилита отличается от regsvr32 наличием дополнительного ключа запуска (остальные ключи сохранены) /c, который и включает режим регистрации под пользователем.

Приблизительный пример использования. Нужно создать объект Cool.object из библиотеки cool.ocx. И библиотека, и regsvrex лежат в каталоге базы.
Попытка
    Объект=СоздатьОбъект("cool.object");
Исключение
	ИмяДЛЛ=КаталогИБ()+"cool.ocx";
	КомандаСистемы(КаталогИБ()+"regsvrex /s /c "+ИмяДЛЛ);
	Попытка
	    Объект=СоздатьОбъект("cool.object");
	Исключение
		Сообщить("Таки не удалося :(");
	КонецПопытки;
КонецПопытки;


Кроме того, таким же образом ( КомандаСистемы(КаталогИБ()+"regsvrex /s /c "+ИмяДЛЛ); ) можно регистрировать и внешние компонеты 1С перед их "загрузкой". Не все правда, v7plus например прокатит, а 1С++ - нет.

Скачать файлы

Наименование Файл Версия Размер
-
.zip 3,90Kb
25.09.09
264
.zip 3,90Kb 264 Скачать бесплатно

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. alexqc 05.10.06 17:07 Сейчас в теме
Да, еще: то что написано "Платформа: MS Windows XP, MS Windows 2000" не значит что под другими платформами не работает. Работает, но только уже полностью аналогично regsvr32 (ключ /с игнорируется). Для win9x это не имеет значения (там пользователи все равно все могут), а NT4 не предоставляет такой возможности (но у кого счас NT у пользователей стоит?)
2. steban 72 05.10.06 17:11 Сейчас в теме
3. JohnyDeath 296 06.10.06 15:28 Сейчас в теме
4. alexqc 01.11.06 13:08 Сейчас в теме
Обновил:
1. Не всегда корректно отрабатывались пути в кавычках;
2. Убрал стандартный загрузочный код -> размер уменьшился почти в 2 раза :).
5. alexqc 02.11.06 12:40 Сейчас в теме
И еще одно обновление: позволяет регистрировать файлы .wsc (компоненты на WindowsScript)
6. romix 611 18.11.06 10:54 Сейчас в теме
7. romix 611 16.12.06 17:06 Сейчас в теме
Я вот думаю, а почему бы 1С по умолчанию не прописывать свои ВК и чужие COM-DLL в пользовательской ветке реестра... Может патч замутить?
8. alexqc 18.12.06 10:04 Сейчас в теме
Потому что за регистрацию вообще-то должна сама компонента отвечать. Так что патчить скорее компоненту надо.
А авторы компонент обычно довольствуются тем что для них вижуал-студия нагенерит. А генерит они примерно следующее:
По-умолчанию регистрация заключается в единичном вызове ResourceRegister() к ресурсу "REGISTRY" компоненты (можете просмотреть например ту же v7plus любым редактором ресурсов - увидите). В ресурсе - скрипт регистрации/разрегистрации, при чем VC его строит только от HKEY_CLASSES_ROOT. И если ResourceRegister() завершилось неудачно (например, прав нет) - соответственно неудачно завершается вся процедура регистрации.
Если позаботиться об этом заранее, не доверяясь VC - то можно избежать таких проблем.

Подробнее о регистрации можно посмотреть в MSDN. Если что - задавайте вопросы, подскажу.
9. vasilykushnir 18.12.06 10:46 Сейчас в теме
Хотя такие вещи я не позволяю делать юзерам, но все-равно
+1
10. artbear 1180 16.10.07 07:21 Сейчас в теме
Полезная вещь.

Для справки:
недавно ВК 1С++ научилась регистрироваться при запуске 1С пользователем с урезанными правами.

А ВК VKLoader, FormEx вообще не требуют регистрации в реестре
11. fez 45 02.06.08 18:47 Сейчас в теме
А нельзя ли получить исходники этой замечательной утилиты?
Нужно для ускорения решения вот этой проблемы: http://bugs.etersoft.ru/show_bug.cgi?id=1861 (полноценный запуск опенконфа под вайном).

Если можно, то fezeev собака gmail точка com
Спасибо.
12. Abadonna 3857 29.10.08 19:07 Сейчас в теме
(0)>v7plus например прокатит, а 1С++ - нет.
А вот эта может всё, и не только DLL
http://infostart.ru/profile/1329/projects/2011/
13. alexqc 29.10.08 19:11 Сейчас в теме
(12) Ну дык эта... Там совсем другая задача
14. Abadonna 3857 29.10.08 19:17 Сейчас в теме
(13) Началось все как раз из-за невозможности сделать regsvr32 ;)
А твою не видал тогда, так что в незнании есть некоторые плюсы :)))
15. tormozit 5796 29.04.10 21:06 Сейчас в теме
Через RegSvr32 библиотека DynamicWrapepper у меня регистрируется, а через RegSvrEx нет. Я что то делаю не так или как сделать, чтобы зарегистрировалось?
16. alexqc 147 30.04.10 10:31 Сейчас в теме
(15) Я не представляю, что Вы делаете не так. Я даже не представляю, что Вы вообще делаете, где, и что видите. Представляете?
17. tormozit 5796 30.04.10 10:45 Сейчас в теме
(16) ОС Windows 2008 Server standart R2. Выполняю команду командного интерпретатора (x86) "regsvrEx.exe dynamicWrapper.dll". Получаю окно сообщения "Команда DllRegisterServer завершилась неудачно". При этом команда "regsvr32.exe dynamicWrapper.dll" выдает сообщение "Команда DllRegisterServer завершилась успешно"
23. cabat 08.04.11 16:01 Сейчас в теме
как я понял, это две разные тулзы, делающие примерно одно и то же:
http://www.1cpp.ru/forum/YaBB.pl?num=1192533507/9#9

а суть моей проблемы была в том, что по крайней мере утилита, которая выложена здесь, мне, так же как и в (15), не помогла,
зато мне подсказали, как решить проблему конкретно с dynwrapx.dll, вот и решил суда кинуть, вдруг кому пригодится..
24. cool.vlad4 44 08.04.11 16:07 Сейчас в теме
(23) Может быть и так, но там хотя бы исходники выложены, которые позволяют что-то подправить, исправить и т.д. А вообще совпадения не так уж редко и бывают, пожалуй...
18. cabat 07.04.11 13:27 Сейчас в теме
Под Win2003 SP2 попытался зарегистрировать DynWrapX.dll - не получилось..
Запускал так:
regsvrex /c dynwrapx.dll

Кому-нибудь удалось с этим разобраться?
19. cabat 08.04.11 14:26 Сейчас в теме
(18) Возможно кому то пригодится: у меня получилось зарегистрировать для текущего пользователя такой командой:
regsvr32.exe /i dynwrapx.dll

первоисточник: Серый форум (разработка скриптов) - DynamicWrapperX
CaSH_2004; +1 Ответить
26. CaSH_2004 356 28.10.14 00:39 Сейчас в теме
(19) очень пригодилось, странно, но регистрация для всех пользователей не прокатывает. поэтому даже не пробовал для текущего, буду копать дальше.
А вот что было дальше: запуск от имени админитратора все решил
20. cool.vlad4 44 08.04.11 15:32 Сейчас в теме
чего-то это все мне напоминает...
21. cool.vlad4 44 08.04.11 15:32 Сейчас в теме
22. cool.vlad4 44 08.04.11 15:36 Сейчас в теме
(0) не это ли первоисточник http://www.codeproject.com/KB/winsdk/regsvrex.aspx? Кстати там в комментах, описывается проблема и ее решение в win08... сайт кстати зачотный...для разработчиков одна из ссылок в избранное...
25. Патриот 254 26.08.14 18:12 Сейчас в теме
А для седьмой винды эта утилита не работает или у меня просто руки кривые? один и тот же код, аналогичный коду в статье под XP работает, а в семёрке нет.. Буду благодарен, если направите на путь истинный.
Оставьте свое сообщение

См. также

LiteManager — удаленное администрирование. Описание, практика применения, рекомендации. Промо

Сервисные утилиты Администрирование данных 1С Бесплатно (free)

Удаленное администрирование компьютерами. Локальная сеть. Интернет. Описание, практика применения, рекомендации.

30.04.2013    78440    0    StepByStep    55    

Сервер администрирования кластера серверов 1C:Предприятия и deployka

Сервисные утилиты Администрирование данных 1С v8 Бесплатно (free)

В данной статье познакомимся с сервером администрирования кластера серверов 1С:Предприятия, а конкретно с утилитами rac.exe и ras.exe, а также программой deployka, с помощью которых становится возможным администрирование кластера серверов 1С:Предприятие из командной строки.

04.04.2018    54443    0    Tavalik    35    

Фиксация изображений с видеокамер (Devline Линия, Acumen, E-Castle) по заданному событию

Сервисные утилиты Бесплатно (free)

Пример использования консольной утилиты CamsCapture, для фотофиксации событий в 1С с камер видеонаблюдения.

10.08.2015    11173    0    IS-Andrey    1    

Удаление "snccntx". Батник

Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Дополнение к известному скрипту по рестарту "СлужбаАгентаСервера1С" (САС1С)

20.03.2015    17409    0    Tomy82    6    

Информер для сайта , актуальные релизы 1С + Проверка подписки ИТС. Промо

WEB Администрирование данных 1С Сервисные утилиты Бесплатно (free)

Небольшой код который встраивается на сайт и выводит информацию о последних релизах конфигураций 1С

12.09.2014    39986    0    Malfarion    34    

Публикация конфигурации 1С на GitHub

Сервисные утилиты Практика программирования Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Статья показывает, как можно подготовить конфигурацию 1С к публикации в системах версионирования, отличных от хранилища конфигурации 1C. В операции задействован .Net framework и C#, позволяющий аккуратно распределить проект 1С по папкам. Пример публикации конфигурации на основе старых обновлений БСП четырехлетней давности (с 1.0.7.5 по 1.1.3.1) можно посмотреть по адресу https://github.com/elisy/ssl . Таким же образом теоретически можно публиковать конфигурации в другие системы версионирования.

23.02.2015    19851    0    Elisy    20    

Фрилансер 1С : Выключить сервер windows 2008 R2 64 RU в нужное время

Администрирование данных 1С Сервисные утилиты Бесплатно (free)

Небольшое производственное (торговое) предприятие. В сети 5-10 компьютеров, серверочек 2008, пользователи (User'ы), сисадмина нет (а ничего сложного, работает сеть и ладно) и фриланс 1С, т.е. я. Самые главные - директор и сторож (охранник). Помещения обесточивают в 21-00 - пакетный переключатель, "Вниз". Спорить бесполезно. Настроил автоматическое выключение компьютеров и сервера по расписанию: в 20-00 клиентские компьютеры, в 20-30 сервер. Может пригодится и Вам. Ничего заумного. Все делается через планировщик заданий. Я только еще раз напомню процесс для сервера. Компьютеры проще, там есть пользователь.

10.06.2014    24043    0    kompas-dm    11    

Файловые базы *.1CD. Физическая структура. Восстановление.

Сервисные утилиты Администрирование данных 1С Тестирование и исправление v8 1cv8.cf Бесплатно (free)

Как устроены файловые базы? Что делать, если база упала? В статье приведены обзорные сведения об устройстве баз и возможностях восстановления. Приведено описание новых возможностей Tool_1CD.

06.06.2013    181466    0    awa    124    

Проставление большого количества галочек в активном окне винды Промо

Практика программирования Сервисные утилиты Инструментарий разработчика Россия Бесплатно (free)

Как проставить большое количество галочек подряд в любом окне винды

07.11.2010    29974    0    Boris-Leleko    9    

Скрипт MS SQL для вывода информации о дате последнего изменения БД и размере БД. Для всех БД на сервере.

Сервисные утилиты Статистика базы данных Администрирование данных 1С Бесплатно (free)

Что делает: Скрипт выводит в виде таблицы информацию о дате последнего изменения базы ( берется из _UsersWorkHistory) и её размер. Кому нужно: Может помочь администраторам у которых на сервере множество различных БД 1С. Одним нажатием кнопки можно понять какие БД стоит рассматривать как "неиспользуемые". Работает только с базами 8.2 управляемое приложение т.к. для определения даты последнего изменения используется системная таблица: _UsersWorkHistory

10.04.2013    18204    0    VVi3ard    7    

Восстановление файловой версии базы данных *.1CD после ошибки динамического обновления.

Сервисные утилиты Архивирование (backup) Администрирование данных 1С Тестирование и исправление v8 1cv8.cf Бесплатно (free)

Восстановление работоспособности файл-серверной базы данных (файл *.1CD) после критической ошибки, возникшей в результате динамического обновления с последующим предупреждением "Внимание!!! При обновлении данных, после последней реструктуризации, произошла ошибка. Повторить обновление?".

02.10.2012    50041    0    djserega    77    

Пример использования 1С-Automation и скриптов AutoIT

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

В данной статье приводится пример использования скрипта AutoIT в качестве клиента для 1С-Automation сервера.

28.06.2012    18090    0    LexSeIch    2    

Активные пользователи Промо

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Обработка аналогична стандартному окну просмотра списка активных пользователей, плюс добавлены следующие функции: - Отправка сообщения выбранному пользователю; - Отправка сообщения всем пользователям; - Закрытие выбранного соединения; - Закрытие всех соединений с информационной базой (кроме своего).

31.03.2008    33575    0    coder1cv8    62    

Как я боролся с Fprint 22

Розничная торговля Сервисные утилиты Администрирование данных 1С Розничная торговля Россия Бесплатно (free)

Как я безуспешно пытался добится печати 56 символов в строке.

27.03.2012    24992    0    zels    25    

v77. Файл пакетного запуска.

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Обработка для формирования файла установок пакетного запуска 1Cv7.

21.03.2012    12602    1    item    9    

Текстовый парсер - обработка формирования биллинга для УПАТС DX-500

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Простенький парсер для текстового файла биллинга АТС DX-500. Для справки: АТС выгружает данные о звонках своих абонентов в формализованный текстовый файл с раширением *.blg. Читать такой файл в исходном виде неудобно, извлекать и отбирать данные по звонкам - тем более. Написана под конкретный формат файла биллинга (зависит от плана нумерации АТС) на платформе 7.7. Использовать в качестве примера. Код чрезвычайно прост, но может быть кому-то поможет сэкономить время :)))))

06.02.2011    4431    0    Дач    1    

Редактор (скрытых) реквизитов объектов

Обработка документов Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Универсальная обработка для доступа к скрытым реквизитам объектов (пока только документы)

21.10.2010    7003    0    RafaelRS    9    

АЦРК: Редактор объекта

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Обработка «АЦРК: Редактор объекта» предназначена для просмотра и редактирования реквизитов любого объекта базы данных. Показывает все реквизиты в универсальной форме. Может применяться для «точечного ремонта» базы данных.

12.09.2010    12380    0    acrk    6    

Загрузка изменений конфигурации с FTP

WEB Сервисные утилиты v77::ОУ v77::БУ v77::Расчет 1cv7.md Бесплатно (free)

В помощь разработчику конфигурации. Предназначена для загрузки изменений конфигурации находящейся в разработке. Работу с обработкой после настройки и сохранения параметров подключения к ФТП ведет обычный пользователь системы, по просьбе разработчика.

26.05.2010    8903    0    Струнин    1    

Поиск и замена дублирующихся элементов справочников, КОД ОТКРЫТ, для 7.7

Сервисные утилиты Поиск данных Универсальные обработки v7.7 1cv7.md Бесплатно (free)

1. Работа над обработкой продолжается. Критика (любая) принимается. 2. Для установки: 2.1 Переименуйте файл WithoutConf.exe_ в WithoutConf.exe и разархивируйте (запустите на выполнение). 2.2 Каталог DLL скопируйте в Вашу базу (копию !!!), каталог ExtForms в одноименный каталог Вашей базы. 3. Для открытия: Сервис Дополнительные возможности 1С:Студио: Отчёты и обработки Поиск и замена элементов справочников 4. В обработке использованы 1С++, FormEx, StrMatch

11.05.2010    22570    0    Незнайка    64    

Групповая обработка документов для 1С: Предприятия 7.7

Обработка документов Сервисные утилиты v77::ОУ 1С7:ТиС Бесплатно (free)

Переделанная типовая обработка из конфигурации "Торговля и склад". Может быть легко адаптирована для любой конфигурации. Обработка умеет снимать / устанавливать пометку удаления, делать не проведенными и проводить документы за выбранный период. Программа распространяется в надежде, что может быть полезена, но БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ.

28.04.2010    24260    0    vovk_v    21    

Пересчет регистров накопления вида "Обороты"

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Что-то с налету не нашел типовой пересчет ОБОРОТОВ, а вдруг понадобилось....

30.03.2010    19087    0    anig99    8    

Ночная обработка

Сервисные утилиты v8 Бесплатно (free)

Ночной запуск обработки в 1С - 8

14.01.2010    12394    0    kitminsk    7    

Универсальные подбор и обработка Задач

Сервисные утилиты Универсальные обработки v8 1cv8.cf Бесплатно (free)

Начал работать с объектом Задачи и столкнулся с необходимостью групповой обработки задач. "Универсальные подбор и обработка объектов" от 1С почему-то этого не умеет делать. Немного работы напильником и обработка стала ещё универсальнее.

04.12.2009    7892    0    hansel    13    

[DesktopGadget1C] - Гаджет для мониторинга активности баз 1С 8.х в клиент/серверном варианте

Сервисные утилиты Статистика базы данных Администрирование данных 1С v8 1cv8.cf Россия Бесплатно (free)

Утилита мониторит серверы 1С 8.1 и 8.2, выводит список активных баз и количество пользователей и позволяет просматривать параметры/настройки кластеров.

27.11.2009    17446    0    Душелов    34    

Универсальный журнал документов + редактирование реквизитов документа без его перепроведения

Обработка документов Сервисные утилиты v8 БП2.0 Бесплатно (free)

Типовая обработка "Универсальный журнал документов" с возможностью редактирования реквизитов документа без его перепроведения.

25.11.2009    12594    0    agew    23    

Редактирование регистров 1С8

Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Обработка предназначена для исправления записей в регистрах, подчиненных регистратору

22.10.2009    7181    0    Pyhar    15    

Загрузка обработок из каталога

Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Загрузка и регистрация обработок, отчетов, печатных форм для стандартных конфигураций 1С 8.1

06.10.2009    7627    0    ilya005    1    

Создаем шифрованные ярлыки.

Универсальные обработки Сервисные утилиты Защита и шифрование v8 1cv8.cf Бесплатно (free)

Покопавшись на сайте я нашел как создают ярлыки. Немного переделав под себя выкладываю данную обработку, не претендуя на Авторство. Просто сделал более удобным.

30.09.2009    11927    0    dj_tol    1    

Убираем Splash Screen для платформы 77.27 (в Терминальном режиме)

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Убираем Splash Screen для платформы 77.27 необходимо для работы в Терминальном режиме

07.09.2009    15603    0    grigr    46    

К вопросу о зависающих фоновых заданиях в 8.1

Производительность и оптимизация (HighLoad) Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Фоновые задания в клиент-серверном варианте иногда зависают так, что снять их можно только путем перезапуска службы. Насколько я понял, никто не знает, что с этим делать. И я не знаю. Но могу поделиться опытом, как научиться с этим жить :)

03.09.2009    25303    0    bulpi    27    

Информер базы 1с 7.7

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

внешняя программа, сделаная для тестирования DLL-ки позволяет без установленой 1с просматривать список пользователей (в том числе и активных), а так-же дополнительные параметры базы. Планируется добавить некоторые полезные инструменты.

30.08.2009    13301    0    vde69    5    

Фоновое восстановление групповой последовательности документов

Обработка документов Сервисные утилиты v77::ОУ 1cv7.md Бесплатно (free)

Очень маленькая и простая обработка фонового восстановления последовательности документов.

20.08.2009    12409    0    zsrg    20    

Как отрубить пользователей и перезапустить сервер 8.1

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Как отрубить пользователей и перезапустить сервер 8.1

15.08.2009    8960    0    sam_57    41    

Набор для админа 1С

Сервисные утилиты Россия Бесплатно (free)

Полезняшки-наборчик для админа 1С В связи с кртикой выложил скриншоты.

13.08.2009    13989    0    sam_57    29    

Групповая обработка документов и справочников

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Типовая обработка + 1. Отключение контроля записи (ОбменДанными.Загрузка) 2. Обработка ПВХ

04.08.2009    14452    0    acsent    8    

К вопросу о регламентном задании – восстановлении последовательности

Практика программирования Сервисные утилиты v8 1cv8.cf Бесплатно (free)

В связи с тем, что, когда передо мной стояла подобная задача, материала в интернете я нашел очень мало. Попытаюсь немного компенсировать этот пробел. Заранее предупреждаю – информация для начинающих разработчиков :)

22.06.2009    20040    0    Dimasik2007    9    

Автоматическая обновлялка 1С:Предприятие 7.7 через FTP

WEB Сервисные утилиты v7.7 1cv7.md Бесплатно (free)

Очередной скрипт автообновления любых конфигураций 1С:Предприятие 7.7 на VBS.

22.06.2009    11693    0    spacc    8    

Перепроведение документов (фоновое)

Обработка документов Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Данная разработка является развитием обработки http://infostart.ru/projects/1244. Хочу еще раз выразить огромную благодарность Александру Окулову

02.06.2009    17686    0    AKV77    27    

Отправка МД-шника на определённый FTP

WEB Сервисные утилиты v7.7 1cv7.md Бесплатно (free)

Отправка МД-шника текущей базы на определённый FTP

27.05.2009    7350    0    Токарь    4    

Перепроведение документов по последовательностям

Сервисные утилиты Обработка документов v8 1cv8.cf Бесплатно (free)

Перепроводим документы по последовательностям "Партионный учет..." и "Кадровый учет" за произвольный период УПП(1.2.22.3)

19.05.2009    8360    0    mosAdm    4