Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Уважаемые! В офисе есть такая надоедливая штука, как 'Уровень безопасности'. ПРЕДЛАГАЮ прогу..
 
 автор: akkorn   (08.01.2008 в 17:45)   личное сообщение
8 Кб.
 
 

Мне надоело обьяснять пользователям куда надо нажать "чтобы база заработала", т.к. у них стоит некий уровень безопасности. А нажимать кнопку "Разрешить небезопасные выражения.." некие индивидуумы не готовы.... Страшно им... блин!

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

в общем, кому интересно- потестируйте. прога ничего не ломает, а для каждого приложения правит всего одну строку в реестре
(ну для Access тама две строки..)

вообще все это можно и через Офис.reg запускать, но в таком случае необходимо будет иметь либо для каждого офиса свой файл, либо засорять реестр ненужными строками для несуществующей версии офиса. У меня же сначала идет проверка наличия этих значений, и если они существуют - тока тогда меняем значение.

ну плюс прибабахал сюда еще и 2007 офис..

велком!

  Ответить  
 
 автор: KrukVN   (09.01.2008 в 11:21)   личное сообщение
 
 


А нажимать кнопку "Разрешить небезопасные выражения.." некие индивидуумы не готовы.... Страшно им... блин!

И пусть боятся. А мы их еще и во время работы будем стращать:
"О Боже! У Вас же уровень безопасности понижен! Как Вы работаете?!"
Вообще это какая-то подстава от мелкософта.
Скоро будет: "В запускаемом exe обнаружен некий код. Он может быть небезопасен и нанести вред вашему компьютеру. Запустить exe файл?"
- Да
- А Вы уверены? Ведь он не прошел сертификацию в лаборатории мелкософта и цифровой подписи у него нет.
- Да хрен с ним
- Ну ладно, я запсукаю exe файл. Нажмите 'Да' если это Вы
- Я, блин!
Касперыч: - "А-А-А это может быть вирус. Нас атакуют!!! Мы все умрем"

P.S. Это я вчера с вистой поработал. До белого каления довела со своей безопасностью.

  Ответить  
 
 автор: osmor   (09.01.2008 в 12:28)   личное сообщение
 
 

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

  Ответить  
 
 автор: KrukVN   (09.01.2008 в 13:01)   личное сообщение
 
 

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

  Ответить  
 
 автор: akkorn   (09.01.2008 в 16:49)   личное сообщение
 
 

Даа. Есть в русских селениях селяне.. и выдали им компьютеры.. и в компьютерах тоже были монстры.. в играх.. и начальство сказало: надо.. и рабочий сказал: есть.. а как пользоваться тьма-тьмущая книжек.. .. .. .. .. ))))

товарищи! скажите плиз что вы думаете о данной утилите? нужна/ не нужна/ абс бесполезна...
и! ее не надо кидать в автозагрузку.. хотя.. хорошая идея! есть ведь в реестре ветка для одного запуска, после которого из этой ветки сама винда удаляет это приложение...
поддержка передаваемых параметров в ярлыке- вот это есть /как мне кажется/ некий плюс- выкладываешь на серваке ярлык на прогу (тож на серваке в утилитах), и пишешь параметры в нем. говоришь юзеру- запусти этот ярлык- и все заработает... он запускает и ничего не видит, а все уже произошло хотя может сделать msgbox- уведомление "ок"?

  Ответить  
 
 автор: osmor   (09.01.2008 в 17:01)   личное сообщение
 
 

НА мой взгляд вещь нужная.

  Ответить  
 
 автор: KrukVN   (09.01.2008 в 17:05)   личное сообщение
 
 


товарищи! скажите плиз что вы думаете о данной утилите? нужна/ не нужна/ абс бесполезна

ИМХО: хорошая идея это прописать вызов Вашего exe-шника (с расшаренной папки) в netlgon скрипте (ну это если используется домен). При загрузке ОС скрипт (лучше bat) срабатывает и все окк. Можно им (юзверям) даже на постояно оставить.
Очень удобно. Появился новый комп, админ заводит в домене нового пользователя прописывает ему netlogon и все (Ваше участие уже не нужно). У нас таким образом многие вещи автоматизируются.

  Ответить  
 
 автор: akkorn   (09.01.2008 в 17:38)   личное сообщение
8 Кб.
 
 

хорошо. выкладываю новый релиз: добавил возможность вывода сообщения пользователю "Успешно" при запуске с командной строки (читайте в ней Help).

включил потому что действительно не понятно этому пользователю- произошло ли что-нибудь или нет, т.к. он ВООБЩЕ ни чего не видит при режиме автозакрытия.

НАРОД! ВОПРОС: в офисе 2007 работает? поэксперементируйте кто могет..

  Ответить  
 
 автор: osmor   (09.01.2008 в 18:03)   личное сообщение
 
 

Спасибо. Перенес на сайт.
в 2007 проверить не могу

  Ответить  
 
 автор: Анатолий (Киев)   (09.01.2008 в 18:28)   личное сообщение
 
 

Сообщение на экране:
ПРИЛОЖЕНИЕ MICROSOFT НЕ СДЕЛАЛО НИКАКОЙ ОШИБКИ, НО, ПО ПРИВЫЧКЕ, БУДЕТ ЗАКРЫТО.

  Ответить  
 
 автор: Анатолий (Киев)   (09.01.2008 в 18:29)   личное сообщение
 
 

Сообщение на экране:
ПРИЛОЖЕНИЕ MICROSOFT НЕ СДЕЛАЛО НИКАКОЙ ОШИБКИ, НО, ПО ПРИВЫЧКЕ, БУДЕТ ЗАКРЫТО.

  Ответить  
 
 автор: akkorn   (09.01.2008 в 18:58)   личное сообщение
 
 

Анатолий (Киев)
что это за сообщение? сообщение где, в чем, после чего?
если это БАГ в работе проги- то пожалуйста максим.подробно. только рад буду поправить

  Ответить  
 
 автор: akkorn   (16.01.2008 в 20:34)   личное сообщение
 
 

Товарищи, посещающие данный форум!
Если кто-то попытался данной утилитой работать с офисом 2007- отпишитесь плиз..
Она тама работает? А то один из постов выше вводит в заблуждение

  Ответить  
 
 автор: Михаил   (13.02.2008 в 09:11)   личное сообщение
 
 

База лежит на сервере вместе с файлом рабочих групп. Папка расшарена. Пользователь запускает базу ярлыком с рабочего стола. В свойствах ярлыка прописана стандартная строка подкючения вида:
{С:\Путь до Access}{\\Путь до базы в сети}{\\Путь до файла раб.групп в сети}{.Пользователь}{.пароль}

Вопрос.
Как запустить базу, чтобы перед ее открытием отработала прога понижения защиты? Т.е. пользователь запустил ярлык, отработала прога понижения защиты и запустилась база.

  Ответить  
 
 автор: akkorn   (13.02.2008 в 21:24)   личное сообщение
8 Кб.
 
 

НЕЕЕ. Стоп. Вы меняете эти настройки не в базе/файле, а в системе. В системе пользователя.
Поэтому запускаете ехе-файл не запуская ни каких баз....

Если вы хотите сделать это для пользователя "не заметно", типа отработала и запустила базу- я это не предусматривал при разработке. Да и сделать это будет наверное проблематично с таким длинным ярлыком, как и использовать вероятно тоже. Так что делаете ярлык на эту программу, пишите в нем ключ автозакрытия плюс уровень необходимой настройки. И выкладываете на сервер. Или от юзера запускаете.. Или в авторан к юзеру, к примеру есть ветка в реестре для одноразового запуска), или.... Тут полный простор для фантазии. Удачи!

p.s Ключи, как и принцип работы описан в хелпе проги.

Последняя версия 1.0.0.9. Файл приложен.

  Ответить  
 
 автор: Михаил   (14.02.2008 в 16:24)   личное сообщение
 
 

>НЕЕЕ. Стоп. Вы меняете эти настройки не в базе/файле, а в системе. В системе >пользователя.
>Поэтому запускаете ехе-файл не запуская ни каких баз....
Собственно, так и запускаю. Вопрос не в этом.

>Если вы хотите сделать это для пользователя "не заметно"...
Именно незаметно. Более того, необходимо запускать понижение безопастности и базу одним ярлыком/батником/скриптом.
Вот только как ??? Ни в батниках, ни в скриптах я, мягко говоря, не силен.
Был бы очень признателен за готовый пример по этому вопросу.

  Ответить  
 
 автор: akkorn   (14.02.2008 в 19:21)   личное сообщение
 
 

Н-дасс.. Вы понимаете, что хотите запускать программу КАЖДЫЙ РАЗ?? ЗАЧЕМ?
А если пользователь сам переопределил себе правила? Уже. И он будет не доволен, ежели все настройки каждый раз будут слетать....
Потом. Если даже предположить, что можно сделать ярлык запускающий ехе, потом после отработки его запускающий базу... Этот ярлык будет постоянным и все ИМЕННО ИМ будут пользоваться.. Не знаю, зачем мутить. Просто говорите юзерам запускать ярлык на ехе-шник отдельно.

А вообще так: если юзер хочет отвечать на кучу вопросов и его это устраивает- путь жмет кнопки Yes в сообщениях. По желанию мы ему (пользователю) сможем их наштамповать большое множество. Если же он (юзер) хочет сделать себе же удобнее- пусть пользуется ярлыком (один раз..). Мой совет- не наждо ни кого ни к чему обязывать. Не хочет- в путь.. пеший..
Рядом с ярлыком или при запуске базы говорить пользователю, что типа, если надоели эти, мол, сообщения- там то и там то лежит ярлык, который поможет вам от них избавиться.

Но это только мое мнение.
Ну или из базы запускать прогу... Но тогда надо проверять на доступность...
я приводил код, позволяющий и проверить доступность и запустить файл в родном приложении.
http://hiprog.com/forum/read.php?id_forum=1&id_theme=2898&page=1

> Именно незаметно
а вот такие действия уже, мягко говоря, не приемлемы. Мы что, вирус пишем, чтобы в фоне "чё мне надо делать"?? Это машина пользователя, пусть он на ней и работает.

Удачи! Если мои подсказки "не катят" - тогда аргументируйте свои желания. Я не вижу смысла как-то переделывать программу, если эта фича нужна будет только одному человеку. И КАК ИМЕННО ее переделывать? Удачи еще раз

  Ответить  
 
 автор: Михаил   (18.02.2008 в 14:32)   личное сообщение
 
 

>Н-дасс.. Вы понимаете, что хотите запускать программу КАЖДЫЙ РАЗ??
"Прекрастно понимаю" (с) Пардон за рекламный каламбур )))

>ЗАЧЕМ?
Да, собстна, думал смысл на поверхности плавает, но тем не менее поясню.
Пользователи. Работают с кучей разных документов. Ворд, эксель, поверпоинт и т.д. Про акцесс даже и не говорю. Полный офисный фарш вобщем. По нескольку десятков документов в день от сторонних людей. Дабы не нарваться на гадость (а случаи поверьте были) - стоит средний/высокий уровни безопастности. Но поскольку предупреждения сильно надоедают при работе с различными документами, меня попросили (по возможности) избавить их от этого при работе с базой. База сугубо локальная. Нарисована за час для некоторых нужд. Вот и хотят люди не видеть напоминания про безопастность хотя бы при работе с этой базой ) При выходе из базы уровень безопастности возвращатется.

>...аргументируйте свои желания. Я не вижу смысла как-то переделывать программу, если >эта фича нужна будет только >одному человеку. И КАК ИМЕННО ее переделывать?
Э-э-э.. у меня не было такого желания, чтобы вы переделывали прогу под одного человека ) Текущий функционал меня вполне устраивает. Вопрос стоял - как запустить базу с одного ярлыка, чтобы с начала отработала прога, а потом запустилась база.

>Удачи еще раз
Удачи всем нам )))

  Ответить  
 
 автор: АлексейЕ   (15.02.2008 в 09:34)   личное сообщение
 
 

http://am.rusimport.ru/MSAccess/topic.aspx?id=646

вот слегка почиканный (оставлена только суть) vbs файл запуска у меня калькулятора платежей

версия 1.08
Option Explicit

Const strPathToUpgrade         =      "\\00.00.00.000\Offer$\"
Const strPathToUpgradeLib         =      "\\00.00.00.000\Offer$\Library\"
Const strPathToLibrary         =    "Library"
Const strSecurity             =     "HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\security\Level"
Const strSecurityJet         =     "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\SandBoxMode"
Const strSecurityEXCEL         =     "HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Security\Level"
Const PathToAccess             =     "c:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE" 


DIM strPathToAccess
DIM strCurrentPath

DIM FSO
DIM File
DIM WshShell 
DIM WshExec 

'...

On Error Resume Next

Set WshShell = CreateObject("WScript.Shell")

'Понижаем безопасность
If WSHShell.RegRead(strSecurity) <> 1 Then
   WSHShell.RegWrite strSecurity, 1, "REG_DWORD"
End If

If WSHShell.RegRead(strSecurityJet) <> 2 Then
   WSHShell.RegWrite strSecurityJet, 2, "REG_DWORD"
End If

If WSHShell.RegRead(strSecurityEXCEL) <> 1 Then
   WSHShell.RegWrite strSecurityEXCEL, 1, "REG_DWORD"
End If
If Err.Number <> 0 Then  
   Err.Clear    
   WSHShell.RegWrite strSecurityEXCEL, "", "REG_DWORD"
   WSHShell.RegWrite strSecurityEXCEL, 1, "REG_DWORD"
End If

'Проверяем версию файла mde и библиотек, если есть обновление на сервере, то тянем их.
'.....
'====================

'Разбираемся с путем к MSACCESS.EXE
Set FSO = CreateObject("Scripting.FileSystemObject")
Set File = FSO.GetFile(PathToAccess)

If  Err.Number > 0 then
   Dim AccessShell
    
   Set AccessShell = CreateObject("Access.Application")
   strPathToAccess =  AccessShell.sysCmd(9)
   strPathToAccess =  strPathToAccess & "MSACCESS.EXE"

   Set AccessShell = nothing 
   Err.Clear
Else
   strPathToAccess = PathToAccess
End If

strCurrentPath = Replace(WScript.ScriptFullName, WScript.ScriptName,"")

' Запускаем Offer.mde
Set WshExec = WshShell.Exec(strPathToAccess & " """ & strCurrentPath & "Offer.mde" & """" & " /cmd ""Moscow""" )


Set File = Nothing
Set WshExec = Nothing
Set WshShell = Nothing
Set FSO = Nothing

  Ответить  
 
 автор: akkorn   (15.02.2008 в 18:30)   личное сообщение
 
 

Ну что же.. Можно и так.
Я сделал проще: проследил куда именно пишутся (в реестре) значения при изменении уровня доступа, вычленил из этого массива именно нужные строчки (одну-две), и сделал выбор. Все. Ни чего сложного. Я помоему это описывал. Далее приклеил командную строку.

Если вас устравивает в каждый проект пихать данную функцию- тогда оки. Мне кажется, что удобнее пользовать ехе-файл. Что и реализовал.

  Ответить  
 
 автор: Nadin   (18.02.2008 в 11:29)   личное сообщение
 
 

У меня почему-то это не работает. Офис 2003. С чем это может быть связано?
Вещь ОЧЕНЬ нужная.
Это только у меня так, или еще есть такие нещастные?

  Ответить  
 
 автор: Palarm   (18.02.2008 в 16:25)   личное сообщение
 
 

Вот еще ссылка
Я там еще добавил и запуск через mdw. Тоже ведь актуально - особенно, когда распространяешь приложения.
Только коса тут есть: где стоит запрет на редактирование реестра - не пашет. И прога не поможет.

  Ответить  
 
 автор: akkorn   (19.02.2008 в 22:33)   личное сообщение
 
 

Михаил
>Вопрос стоял - как запустить базу с одного ярлыка, чтобы с начала
>отработала прога, а потом запустилась база.
Т.е. Вы согласитесь, если я скажу, что ДАННАЯ программа будет запускаться всегда у того, кто дважды щелкнет по такому ярлычку. Но ведь реально может случиться так, что пользователи "помогут" друг другу, скопировав такой ярлык запуска базы. И вполне реально может случиться так, что у четверти-десятой части пользователей ярлык будет, как бы сказать, немного не то запускающий (ваша база будет стартовать уже черз мою прогу). Верно? Потом, Вы сказали, что необходимо восстанавливать уровень обратно после закрытия базы. А это-то как организовать, если моя программа будет выгружена из памяти компьютера сразу после запуска базы с нужной командной строкой?
Хорошо, я пытаюсь и Вас понять. )) Т.к. в базе этот способ организовать (отутствие сообщений безопасности) не предстовляется возможным, то можно попробовать организовать его в какой-нибудь программе-посреднике. Согласен, логично. Если с запуском тут все прозрачно, то как быть с возвращением предыдущего уровня обратно (при чем именно того, который был)?


Palarm
Про реестр вы верно сказали. Но не учли, что я принципиально обошел (во всяком случае постарался) ветки реестра, критичные для системы. Вот скажите, если у Вас на компьютере права User, то что, меняя вручную стандартным способом уровень доступа- он у Вас остается прежним? Ведь нет. А значения-то меняются в реестре ))))


Nadin
Спасибо Вам! Буду исправлять. Осталось офис2003 достать. ))
Думаю все получится дня через 3 (завтра тока попробую приобрести и поставить). Потом необходимо понаблюдать за его действиями (это не долго). Потом дело "свободного часа".

  Ответить  
 
 автор: Михаил   (20.02.2008 в 09:57)   личное сообщение
 
 

>Т.е. Вы согласитесь, если я скажу, что ДАННАЯ программа
>будет запускаться всегда у того, кто дважды щелкнет по
>такому ярлычку. Но ведь реально может случиться так, что
>пользователи "помогут" друг другу, скопировав такой ярлык
>запуска базы. И вполне реально может случиться так, что у
>четверти-десятой части пользователей ярлык будет, как бы
>сказать, немного не то запускающий (ваша база будет
>стартовать уже черз мою прогу).
Пользователи копируют ярлык к проге. В ярлыке соответственно прописаны путь к проге и ключи.

>что необходимо восстанавливать уровень обратно после
>закрытия базы. А это-то как организовать, если моя программа
>будет выгружена из памяти компьютера сразу после запуска
>базы с нужной командной строкой?
Я поэкпериментил с обычным Shell-ом на кнопке выхода из базы. Возвращает обратно )) Уровень выставляю средний, как имхо самый оптимальный. Определять существовавший уровень - это лишнее. Проще говоря - обойдутся

  Ответить  
 
 автор: akkorn   (20.02.2008 в 21:35)   личное сообщение
 
 

Nadin
Вы меня дезинформировали. Все работает на русском проф.Офисе 2003 прекрасно. Однако я проследил за системой и могу с уверенностью Вам сказать, что Вы что-то попутали.

Михаил
Попробую что-то набросать. Идея есть- по определенному ключу запускать приложение. Далее, после кавычек- передавать этому приложению командную строку. Одновременно, не выгружая из памяти программу, но и не показывая ее юзеру- ждать закрытия приложения для возвращения уровня безопасности в предыдущее состояние..
Нда-сссс. Теперь бы в этом мне самому разобраться..

  Ответить  
 
 автор: Nadin   (21.02.2008 в 00:18)   личное сообщение
 
 

Галлюцинациями не страдаю, ничего не путала.
У меня работает только если запускаю Skript.vbs.
Чем это можно объяснить, не знаю.
Спасибо за скрипт.

  Ответить  
 
 автор: akkorn   (21.02.2008 в 23:53)   личное сообщение
 
 

Уважаемая Nadin
Я не хотел Вас обидеть. Просто проверил (снес старый офис, поставил 2003) - посмотрел реакцию офиса на действие. Она у меня в программе отрабатывает на все сто.
Можно вас попросить, если не затруднит, запустить програмку отслеживающую изменения в реестре, и приложить ее результаты работы?

Если Ваш ответ будет положителен, пожалуйста, советую использовать программку regshot - я ей пользуюсь довольно давно и рекомендую для просмотра изменений в реестре. Она не устанавливается, работает четко и без шума и пыли ))
Делаете первый снимок (без сохранения), после этого меняете С МАКСИМАЛЬНОГО НА МИНИМАЛЬНЫЙ уровень (чтобы мне было понятно из одного снимка) в Word, Excel и Access (у всех трех). После изменения уровня безопасности - делаете второй снимок (каждый снимок - примерно 10-20 сек) и жмете кнопку "Сравнить". Результат откроется в текстовом редакторе. Приложите этот файл (НЕ закрывайте его, а сохраните), но только в архиве к вашему сообщению на данном форуме.
Заранее хочу сказать "Спасибо". На счет програмы не беспокойтесь. Довольно шустрая, безглючная, не требующая регистраций и т.п. вещей. Хорошая вещь. Более того, позволяет сравнивать данные реестра даже после перезагрузки компьютера.


Михаил
Я подумал на досуге, и вышло, что в ярлыке не представляется возможным предоставить все необходимые данные. В ярлыке помещается только 260 символов в пути. Однако там необходимо прописать:
-ссылку на мою прогу (60-96 символов)
-Путь до Access (56)
-\\Путь до базы в сети (60-96)
-\\Путь до файла раб.групп в сети (60-96)
-Пользователь (14)
-пароль (14)

итого:
min 60+56+60+60+14+14=264
max 96+56+96+96+14+14=372

выходит, что не помещаемся. выход напрашивается следующий: использовать ссылку на файл dat или txt. В нем в первой строке пишем адрес до access, а во второй- все дополнительные ключи. Запускаем же чтение этого файла по ключу. Тогда все вроде д.б. гуд.
Как идея?

  Ответить  
 
 автор: Михаил   (26.02.2008 в 12:00)   личное сообщение
 
 

>...выход напрашивается следующий:
>использовать ссылку на файл dat или txt. В нем в первой
>строке пишем адрес до access, а во второй- все
>дополнительные ключи. Запускаем же чтение этого файла по
>ключу. Тогда все вроде д.б. гуд.
>Как идея?

Честно говоря не уловил )
Если можно - "разжуйте" пожалуйта всю схему )
Что и как запускаем. Что происходит. Что получаем в итоге.

  Ответить  
 
 автор: akkorn   (26.02.2008 в 22:17)   личное сообщение
 
 

Михаил
Сегодня выложить еще не смогу- может завтра. Хоть и все готово- все же немного хочется "отштукатурить" ))
А смысл следующий:
Я говорил о том, что в поле ярлыка не помещается все, что необходимо нам - там всего 260 символов может меститься. Соответствено....

Программа также будет запускаться по ярлыку. В строке запуска, помимо старых ключей еще появился ключ Z. После этого ключа необходимо прописать имя/путь и имя файла, в котором:
-в первой строке будет значиться файл для запуска (exe, html, doc, zip, ......)
-во второй- ключи, которые будет вопринимать УЖЕ ЗАПУЩЕННОЕ приложение (см.строчку выше)

имя такого конф.файла может быть любым, главное чтобы тело было текстовым.

Да! Если программа встретит такой (z) ключ, то пользователю она не будет видна (автозакрытие, невзирая на введенные ключи)

Принцип работы: при запуске программа
-запомнит все три установленных уровня без-ти (Word,Excel,Access),
-установит их минимальными,
-попытается запустить внешнюю программу (из этого конф.файла) с ключами (если они есть),
-потом восстановит обратно уровни безопасности
-и тихо окончится.

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

вроде самое основное и наиболее просто рассказал. в хелп я уже все прописал.
сейчас сижу- колдую над проблемой Nadin. Если она сказала, что скрипт сработал- то мне становится понятно кое-что.... Ладно. Это уже немного другое.

Мож завтра выложу.

  Ответить  
 
 автор: Nadin   (27.02.2008 в 03:29)   личное сообщение
 
 

Всем привет!
А можно ссылочку на эту программку regshot?
У меня такой нет.

  Ответить  
 
 автор: akkorn   (27.02.2008 в 21:28)   личное сообщение
13 Кб.
 
 

Nadin
Добрый день. Конечно можно-
https://sourceforge.net/projects/regshot

Михаил & ALL!
Я приложил новый релиз.
Пользуйтесь
отпишитесь плиз, понятно ли все, работает ли..

  Ответить  
 
 автор: Alex   (01.03.2008 в 11:39)   личное сообщение
 
 

А в винде2000 (про, сп4) еще хуже стало - было одно сообщение про безопасность - а стало 2
Сильно много фотки съел - протрезвею напишу подробнее

  Ответить  
 
 автор: Alex   (01.03.2008 в 11:53)   личное сообщение
 
 

Забыл сказать - Win2000 ; Runtime ...

  Ответить  
 
 автор: Alex   (01.03.2008 в 13:24)   личное сообщение
 
 

А где в реестре править две строчки? Как называются?

  Ответить  
 
 автор: akkorn   (02.03.2008 в 03:10)   личное сообщение
 
 

Ув. Alex
Напишите плиз В ТОЧНОСТИ ваши действия перед тем как ЭТО появилось (проявило себя). Хотелось бы также знать, что вы в этот день устанавливали/удаляли на/с компьютера.
Интересно также взглянуть на ЭТИ ДВА сообщения- сделайте плиз скрин и выложите сюда.
Только при наличии ответов я смогу что-либо сказать.
А т.к. Вы это делали в не трезвом состоянии, то есть вероятность того, что Вы могли бы что либо натворить, что юзер не сможет и в трезвом- довольно высока. А в такие факты, исправляя их, мозг иногда напрочь! отказывается верить- поверьте случаи бывали.. вот сидишь, бывает, и ломаешь голову: ну КАК ЭТО ТАК МОЖНО..... ))

Моя же программа изменяет только существующие ключи, а если ключей ВООБЩЕ нет для какого-то приложения- то и кнопка этого приложения в последней версии будет неактивна.

Удачи!

  Ответить  
 
 автор: Михаил   (02.03.2008 в 15:18)   личное сообщение
 
 

>Моя же программа изменяет только существующие ключи,
>а если ключей ВООБЩЕ нет для какого-то приложения- то и
>кнопка этого приложения в последней версии будет неактивна.

Прогу удалось проверить пока только на одном компе (помимо своего).

Механизм запуска.
Прога лежит на сетевой шаре. Там же база и файл рабочих групп.

Создал ярлык к ехе-файлу проги вида: "\\Сетевой-путь-до\SetWarnings.exe" az\\Сетевой-путь\ini.txt (ярлык создал там же, в сетевой папке. запускал его тоже из сетевой папки)

Создал ini.txt вида:


С:\Локальный путь до Access на своей машине
\\Путь до файла БД
/wrkgrp
\\Путь до файла раб. групп
/user
Пользователь
/pwd
Пароль


Понижение срабатывает. Но я видимо неправильно расписал строки. Дальше второй строки не обрабатывает. Пробовал по разному, пока неудачно. Поправьте если не трудно )

А вот у пользователя понижение защиты не сработало. (предварительно я удалил свои логин и пароль из ini.txt)
У пользователя установлен Ms Office 2003 (Access) по стандартому пути и Visio 2007 (тоже по стандартому). При запуске ехе-файла проги все кнопки неактивны. Почему неактивны - понятно. В реестре нет нужных значений. А вот почему их там нет мне непонятно )

Остальные компы проверю на неделе.

  Ответить  
 
 автор: akkorn   (02.03.2008 в 21:38)   личное сообщение
91 Кб.
 
 

Добрый вечер, Михаил.
Все верно, моя программа обрабатывает только первые две строки.
В хелп'е есть информация, как именно прописывать пути, конфигурить конф.файл и т.д..

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


Следовательно, если файл ini.txt лежит в той же папке что и SetWarnings.exe,
то пишем в ярлыке запуска SetWarnings.exe:
\\Сетевой-путь-до\SetWarnings.exe zini.txt
если НЕ в этой же папке, то-
\\Сетевой-путь-до\SetWarnings.exe z\\Сетевой-путь\ini.txt

Конфигурация файла ini.txt:
С:\Локальный путь до Access на машине пользователя
ключи, которые Вы раньше передавали этому ехе-шнику

, т.е. если раньше вы запускали базу таким образом:
{С:\Путь до Access}{\\Путь до базы в сети}{\\Путь до файла раб.групп в сети}{.Пользователь}{.пароль}

то сейчас необходимо эту командную строку поделить на две:
{С:\Путь до Access}
и
{\\Путь до базы в сети}{\\Путь до файла раб.групп в сети}{.Пользователь}{.пароль}

т.е. конфигурация ini.txt будет вида:
{С:\Путь до Access}
{\\Путь до базы в сети}{\\Путь до файла раб.групп в сети}{.Пользователь}{.пароль}

Все просто: в вашей ситуации моя программа запускает access.exe и передает ему те ключи, которые находятся во второй строке ini.txt.

Удачи!

===
p.s.: для возможности использования данного способа необходимо использовать программу SetWarnings версии 1.0.10. Версия 1.0.09 не знает еще о ключе z


======
p.s.2:
А вот у пользователя понижение защиты не сработало. (предварительно я удалил свои логин и пароль из ini.txt)
У пользователя установлен Ms Office 2003 (Access) по стандартому пути и Visio 2007 (тоже по стандартому). При запуске ехе-файла проги все кнопки неактивны. Почему неактивны - понятно. В реестре нет нужных значений. А вот почему их там нет мне непонятно )


если честно, то мне тоже не понятно. Если не трудно, скажите,
1) уровень безопасности ВООБЩЕ МЕНЯЕТСЯ у этого пользователя штатным способом?
Если да, то второй вопрос:
2) у пользователя поставлен только access, или пакет (word,excel,access...).

В случае, а также для быстрейшего оперативного изменения, если штатным образом МОЖНО поменять уровень безопасности (он должен быть вроде здесь http://keep4u.ru/full/080223/4ac332de4edf825130/jpg )- то если не затруднит, пожалуйста, запустите приложенную программу RegShot, создайте 1 снимок (не сохраняя), установите новый (любой) уровень штатным способом и сразу же 2 снимок. Потом нажмите кнопку Сравнить (необходимо помнить, чем больше времени прошло м/у первым и вторым снимком, а также чем больше было действий системы- то в отчете будет много мусора). Этот отчет приложите пожалуйста сюда- это поможет мне понять, какие строки реестра я не учел. Я их включу в работу и выпущу очередной релиз, учитывающий уже и их..

  Ответить  
 
 автор: Михаил   (03.03.2008 в 12:26)   личное сообщение
 
 

>т.е. конфигурация ini.txt будет вида:
>{С:Путь до Access}
>{\Путь до базы в сети}{\Путь до файла раб.групп в
>сети}{.Пользователь}{.пароль}
>
Что-то не выходит каменный цветок
Строка типа:
\\Путь до базы в сети /wrkgrp \\Путь до файла раб.групп в сети /user Пользователь /pwd Пароль
не срабатывает.
Можно конкретный пример? )

>1) уровень безопасности ВООБЩЕ МЕНЯЕТСЯ у этого пользователя штатным способом?
Меняется. После понижения защиты БД запускается без всяких глупых предупреждений )

>Если да, то второй вопрос:
>2) у пользователя поставлен только access, или пакет (word,excel,access...).
Установлен полный пакет (word,excel,access...) + аутлук и поверпоинт.

>)- то если не затруднит, пожалуйста, запустите приложенную программу RegShot, создайте 1 >снимок (не сохраняя)...
Сегодня-завтра сделаю.

  Ответить  
 
 автор: Alex   (03.03.2008 в 09:51)   личное сообщение
48 Кб.
 
 

Ув. Akkorn
На одном из рабочих компов установлен лицензионный Windows2000 и MSRuntime2003 (и еще, если это важно, антивирус Avira (зонтик), Opera9.21 и TotalCommander7.0 - больше ничего нет)
При запуске на этом компе интерфейсной части приложения Access (таблицы - на сервере) появлялось сообщение безопасности - см.вложение
В рантайме никаких меню кроме моих не обнаружено, как понизить уровень безопасности через реестр я не знаю. Поэтому было решено воспользоваться Вашей утилитой.

  Ответить  
 
 автор: Alex   (03.03.2008 в 10:05)   личное сообщение
66 Кб.
 
 

При запуске утилиты кнопки были активны - следовательно соответствующие ключи в реестре имелись. Однако после выбора уровня безопасности "Низкий" и нажатии кнопошки Access, при запуске приложения стало появляться второе сообщение - см.вложение - итого их (сообщения) теперь два
"...А т.к. Вы это делали в не трезвом состоянии, то есть вероятность того, что Вы могли бы что либо натворить, что юзер не сможет и в трезвом- довольно высока. А в такие факты, исправляя их, мозг иногда напрочь! отказывается верить- поверьте случаи бывали.. вот сидишь, бывает, и ломаешь голову: ну КАК ЭТО ТАК МОЖНО..... ))..." +1000 Это были остаточные явления...

  Ответить  
 
 автор: akkorn   (03.03.2008 в 21:08)   личное сообщение
14 Кб.
 
 

Alex
День добрый!
Извините, видать зря бочку катил . Бывают пользователи и такие, коим надо написать AnyKey на пробеле- Иначе ни как не обьяснить, что это за клавиша..
Сдается мне, что по описанным вами сообщениям необходимо смотреть ключи
в ветке HKEY_LOCAL_MACHINE (HLM).

Программа в настоящий момент смотрит вот эти ветки реестра:
HKEY_CURRENT_USER, "Software\Microsoft\Office\8.0\Access\Security", "Level"
HKEY_CURRENT_USER, "Software\Microsoft\Office\9.0\Access\Security", "Level"
HKEY_CURRENT_USER, "Software\Microsoft\Office\10.0\Access\Security", "Level"
HKEY_CURRENT_USER, "Software\Microsoft\Office\11.0\Access\Security", "Level"
HKEY_CURRENT_USER, "Software\Microsoft\Office\12.0\Access\Security", "VBAWarnings"

HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Jet\4.0\Engines", "SandBoxMode"
HKEY_LOCAL_MACHINE, "Software\Microsoft\Office\12.0\Access Connectivity Engine\Engines", "SandBoxMode"

в HKU могут быть значения 1, 2 или 3 - это и есть тот уровень, что мы выбираем штатным путем.

HLM отвечает за использование изолированного режима
Значение Описание
0 Изолированный режим- постоянно отключен
1 Изолированный режим- используется для Access, однако отключен для других программ, не связанных с Access
2 Изолированный режим- используется для программ, не связанных с Access, однако отключен для Access
3 Изолированный режим- постоянно включен. Это значение по умолчанию, которое задается при установке Access

При изменении изолированного режима моя программа оперирует значениями только 2 и 3, а т.к. у Вас установлен MSRuntime2003- то попробуйте поставить значение 0. И отпишитесь.



Михаил
Подтверждаю. Накосячил с путями, хотя если путь короткий - все ок.
Прикладываю НОВЫЙ РЕЛИЗ проги.
У меня отработал при такой конфигурации:

Ярлык:
...\SetWarnings.exe zz.txt
ессно работают и все остальные ключи (но мы их сейчас не рассматриваем)

z.txt: (1)
c:\книга 1.xls

z.txt (2)
C:\Program Files\Microsoft Office\Office10\EXCEL.EXE
"c:\книга 1.xls"

z.txt (3)
C:\Program Files\Microsoft Office\Office10\MSACCESS.EXE
"c:\test mdb\прлж.mdb" /wrkgrp "D:\test mdb\Wrkgrp.mdw" /user admin /pwd 0

Удачи!
p.s. не забудьте плиз сделать снимочек изменений реестра

  Ответить  
 
 автор: Alex   (04.03.2008 в 09:25)   личное сообщение
 
 

Спасибо Сегодня выходной, а завтра попробую поковырять реестр...

  Ответить  
 
 автор: Михаил   (04.03.2008 в 14:12)   личное сообщение
4 Кб.
 
 

akkorn
>C:Program FilesMicrosoft OfficeOffice10MSACCESS.EXE
"c:\test mdb\прлж.mdb" /wrkgrp "D:\test mdb\Wrkgrp.mdw" /user admin /pwd 0
Алилуя блин )

>p.s. не забудьте плиз сделать снимочек изменений реестра
Перед снятием снимков запускал ехе-файл проги (новой версии). Все кнопки неактивны (

Сделал 2 снимка изменений. С несколько разными последовательностями действий. Незнаю как правильно делать для чистоты эксперимента )
Последовательность действий описал в файле.

  Ответить  
 
 автор: akkorn   (04.03.2008 в 19:45)   личное сообщение
 
 

Михаил
Спасибо большое. Ваши записи пригодились.
Скажите, на той машине и сейчас при запуске моей проги неактивны кнопки?
или все же после изменения хоть раз штатным путем они становятся активны?

  Ответить  
 
 автор: Михаил   (05.03.2008 в 21:18)   личное сообщение
 
 

После понижения безопастности штатным режимом активизировалась кнопка Access. Понижение безопастности через прогу так же заработало. Но при запуске через ярлык не срабатывает понижение.

  Ответить  
 
 автор: akkorn   (05.03.2008 в 22:56)   личное сообщение
 
 

После понижения безопастности штатным режимом активизировалась кнопка Access

Отлично, это лишь подтвердило мою догадку- пока штатным путем не изменишь уровень- в реестре соответствующих строчек нет.
Буду этот момент пытаться обходить. Вся проблема в том, чтобы верно определить версию для каждого из приложений (бывает встречаются бутерброды из версий оффиса).


Но при запуске через ярлык не срабатывает понижение

А вот это уже интересно. Не срабатывают ключи w,e,a или не срабатывает понижение через z ?

  Ответить  
 
 автор: Михаил   (06.03.2008 в 10:00)   личное сообщение
 
 

>А вот это уже интересно. Не срабатывают ключи w,e,a или не
>срабатывает понижение через z ?
Прошу прощения за свою невнимательность. В ярлыке был прописан только ключ z
Добавил ключ 'а' и понижение сработало ) Но при неактивных кнопках конечно не работает (

  Ответить  
 
 автор: Alex   (06.03.2008 в 13:54)   личное сообщение
 
 

Вчера не успел - сегодня все получилось.
Сдается мне, что по описанным вами сообщениям необходимо смотреть ключи
в ветке HKEY_LOCAL_MACHINE (HLM):
HKEY_CURRENT_USER, "Software\Microsoft\Office\8.0\Access\Security", "Level" 'ключ отсутствует
HKEY_CURRENT_USER, "Software\Microsoft\Office\9.0\Access\Security", "Level" 'ключ отсутствует
HKEY_CURRENT_USER, "Software\Microsoft\Office\10.0\Access\Security", "Level" 'ключ отсутствует
HKEY_CURRENT_USER, "Software\Microsoft\Office\11.0\Access\Security", "Level" 'ключ отсутствует

В этой ветке HKEY_CURRENT_USER, "Software\Microsoft\Office\11.0\Access\Security" создал параметр DWord Level - значение 1 - все сообщения исчезли

  Ответить  
 
 автор: akkorn   (09.03.2008 в 00:26)   личное сообщение
 
 

Alex
Спасибо, учту.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList