Есть 2 машины одна содержит OPC_сервер, а другая OPC_клиента. В виду того что OPC-технология настраивается через DCOM, то необходимо использовать dcomcnfg.exe, но на все мои извраты утиллиа, которая оттестирована и хорошо работает у производителя нехочет работать у меня. Две ЭВМ связаны меж собой через LAN на нашей организации, отсюда просьба подсказать как настроить файерволл, т.е. что надо открыть по мимо сетевого порта 135 ? А также каковы настройки должны быть внесены в систему MS Windows XP Pro SP2 ?
В свое время я дофига провозился с настройкой ОПЦ через ДКОМ в локалке под 2к, а потом еще раза в 2 больше после перехода на хр сп2 Кроме открытия 135, нужно ОПЦ сервер занести в список программ, которым разрешено работать через фаервол, т.е. в ексепшены. Кроме опц сервера, чтобы удобно было тестить, туда можно добавить еще и opcenum, чтоб с клиента было видно, какие опц серверы доступны на машине, так проще дебажить, но не обязательно, конечно. На форуме opcfoundation был отличный пдф документ, описывающий шаги, которые необходимо предпринять для настройки хр2 для корректной работы ОПЦ (если в доках не найдете, то поищите по их форуму - там обсуждалось). В документе об этом говорится, но по памяти помню, что помимо персональных настроек в dcomcnfg для ОПЦ сервера (что, в общем-то, очевидно), нужно глянуть, чтоб не было ограничений в default authentication level и defualt impersonation level. А также очень важно, чтобы для системы (не только для конкретного ДКОМ сервера!) в "access permissions" и "launch and activation permissions" стояло allow для ANONYMOUS_LOGON юзера в лимитах (remote и local, если надо локально, access/launch/activation), а также были cоответствующие дефолт пермишены. Обратите внимание на то, что ANONYMOUS_LOGON - не является подмножеством Everyone, поэтому одного Evryone'a недостаточно. Я не знаю, как это объяснить, но пока я это выяснил - семь потов сошло. Как совет - для начала дайте все права анонимному логону и евривану (как для машины, так и для сервера), выключьте фаервол. Когда заработает - настройте вначале фаервол. Потом начните исходя из необходимой политики старта / доступа / подъема ДКОМ сервера потихоньку урезать пермишены, начиная с глобальных для ситсемы, а потом переходя к персональным. Важно помнить, что вначале применяются глобальные лимиты, а потом уже вступают в силу настройки для конкретного сервера. И желательно после каждого изменения тестить, чтобы четко проследить, после чего перестает работать. Будут вопросы - пишите. Постарайтесь выделить по-больше времени и методично пройдитесь по всем настройкам dcomcnfg, продумайте каждую опцию, для начала везде все разрешайте. Там напутано порядочно, поэтому с наскоку тяжело сразу настроить.
Грамотный ответ, а почему на на opcfoundation, так это потому что там все закрыли! Т.е. щас там доки не скачать, но слава богу есть гугл! Спасибо
TheRawGod Кстати у тебя есть аська, если что пиши в личку. Щас пишу компонент для Турбо Дельфи, токо ман начал читать! Делаю пока поиск всех серверов на компе, кроме как открыть каждый ключ в реестре на HKEY_CLASSES_ROOT и проверить каждый на наличие подключа "OPC" вроде пока не пришло в голову. Хотя вот какой то интерфейс есть IOPCServerList, IOPCServerList2 может и это чтото даст.
Странно, я давно не был на opcfoundation.org, но сейчас зашел - они дают скачивать спецухи теперь только платным членам фаундации, кроме одной единственной. Это, честно говоря, такая глупость Когдя я занимался ОПЦ, этого ограничения еще не было. Наша компания не была членом фаундации, но мы поддерживали стандарт в нашем продукте и пользовались услугами третьей компании, которая членом являлась, т.е. опосредованно приносили фаундации прибыль. И самое интересное, что если бы мы после market или как там оно reasearch не смогли скачать их спецухи, чтобы убедиться в соответствии стандарта нашим нуждам не только идеологически, но и технически, мы бы никогда не взялись его у себя имплементить. Забавная у них политика Это субъективное мнение. У меня этих док. сейчас с собой нет, но можно поискать или попросить ребят, чтоб закинули. Если будет время, то я займусь этим. Это все по поводу перечисления серверов. Там действительно есть эти интерфейсы, но как и у кого их грамотно запрашивать, я не помню. Это описано в Common части OPC спецификации, по-моему. Там как-то можно регистрировать сервер, чтобы не приходилось потом перебирать все подряд в поисках того, что поддерживает это дело. Как это реализовано технически, я не помню Как вариант - почитать OPC.Common.1.10 или реверснуть opcenum и глянуть кого оно и как запрашивает. У нас же, наоборот, стояла задача сторонним юзерам не давать знать, что на компе стоит ОПЦ сервер, потому что тачки как правило были доступны в интернете со всеми вытекающими.