Notes Com Минимальная инсталляция

Тема в разделе "Lotus - Программирование", создана пользователем AndryG, 21 янв 2009.

  1. AndryG

    AndryG Гость

    Доброго.

    Работаю с NOTES через COM (почту отправляю/принимаю ... не более).
    Скрипты (PHP) работают нормально.

    Теперь стала задача:
    эти скрипты должны работать на другой машине. Notes там нет.
    Как определить необходимый минимум файлов Notes для работы ?

    Научным тыком пробовал - "устал" :)

    Принимаются все идеи. А если список будет -- вообще замечательно.
     
  2. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    найди notespk, положи его куда-то в папку отдичную от Notes и попробуй запустить...
    он тоже работает через COM, начнет материться чего ему не хватает, того и подложишь...
    по-идее, для твоей задачи тех же файлов должно хватить...
     
  3. AndryG

    AndryG Гость

    Попробовал.
    На определенном этапе сказал "ошибка загрузки модуля" :) и молчит.
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    значит кроме дллок ему еще чего-то не хватает...
    а попробуй теперь с этими дллками запустить свой код...

    о! попробуй мож Filemon и Regmon (sysinternals tools) использовать?..
    возможно, получится понять, что он хочет...
     
  5. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    нехватает регистрации СОМ обьекта (OLE сервера) в винде,а точнее в реестре

    ищите в клиенте файл notesw32.reg, там всё есть
     
  6. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    что-то я там такого не нашел... к стати, регистрация иначе
    выполняет ее инсталлятор...

    итаг, список, который я получил используя Process Monitor (вместо FileMon от SysInternals)

    при наличии этих файлов notespk запустился...

    сразу оговорюсь, что на этой же машине у меня установлен Notes!
    поэтому на чистой машине этого может и не хватить... но мне негде пробовать...
    кроме того, notes.ini содержит набор данных, типа пути к Data, id и т.п.

    вот для исследования:
    http://download.sysinternals.com/Files/SysinternalsSuite.zip
     
  7. AndryG

    AndryG Гость

    Доброго.

    Список файлов: (добавли пару в список от Akupaka )
    icudt18l.dat
    js32.dll
    ltouin22.dll
    ltsci3.tlb
    ndgts.dll
    nlsccstr.dll
    nlsxbe.dll
    nnotes.dll
    notes.ini
    notespk.exe
    notesw32.reg
    nstrings.dll
    nxmlcommon.dll
    nxmlproc.dll

    Пытаюсь выполнить "regsvr32 nlsxbe.dll"
    Получаю
    ---------------------------
    RegSvr32
    ---------------------------
    DllRegisterServer in nlsxbe.dll failed.
    Return code was: 0x80029c4a
    ---------------------------
    OK
    ---------------------------

    Пытаюсь выполнить код (понятно, что не получится, но интересно)
    Код (Text):
    ...
    $n_session = new COM("Lotus.NotesSession");
    $n_session->initialize($p_pass);
    ...
    Получаю ошибку "Call to undefined method com::initialize()" на строке инициализации

    Кто-что еще подскажет?

    Уже начинаю думать .. может ну его нафиг? Потом будешь сидеть и думать, кто глючит: "обрезок" или скрипт?

    С другой стороны ... COM-сервер то еще не зарегерен нормально.
     
  8. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    ну какже

    [codebox]** registration info for LSXBE/Notes v4, back-end class factory **

    HKEY_CLASSES_ROOT\Notes.NotesSession = Notes R4.0 NotesSession
    HKEY_CLASSES_ROOT\Notes.NotesSession\Clsid = {29131401-2EED-1069-BF5D-00DD011186B7}
    HKEY_CLASSES_ROOT\CLSID\{29131401-2EED-1069-BF5D-00DD011186B7} = Notes R4.0 NotesSession
    HKEY_CLASSES_ROOT\CLSID\{29131401-2EED-1069-BF5D-00DD011186B7}\ProgID = Notes.NotesSession
    HKEY_CLASSES_ROOT\CLSID\{29131401-2EED-1069-BF5D-00DD011186B7}\LocalServer32 = %notesdir%notes.exe /Automation
    HKEY_CLASSES_ROOT\CLSID\{29131401-2EED-1069-BF5D-00DD011186B7}\LocalServer = %notesdir%notes.exe /Automation[/codebox]


    AndryG
    а кака насчёт 3х звенной архитектуры?
    клиент(винда) - С П - С БД
    СП - сервер приложений ( ждет отклика от ваших клиентов и чтото выполняет по запросам )
    СБД - сервер БД , собственно сам лотус, куда СП пишет всю инфу.


    Эта схема позволит не юзать на клиентах лотусячие либы и не закакивать клиентские тачки.
     
  9. AndryG

    AndryG Гость

    Немного не понял. У меня стоит задача: отправлять письма, которые генерит сервер.
    Сечас:
    Сервер генерит текстовые файлы. На моей машине под моим лотусом работает в кроне скрипт и рассылает письма.
    Хочу:
    Notes поставить на машине рядом с сервером ... и пусть они там договариваются без меня.

    Клиентские машины вообще нигде не исплюзуются. (Они через WEB работают с сервером или толстыми клиентами)

    Нашел :) Зарегерил :)
    data -- ПАПКА ПУСТАЯ (Notes сам там файлы создает)
    domobj.tlb
    icudt18l.dat
    js32.dll
    ltouin22.dll
    ltsci3.tlb
    ndgts.dll
    nlsccstr.dll
    nlsxbe.dll
    nnotes.dll
    notes.ini
    notes32.tlb
    notespk.exe
    notesw32.reg
    nstrings.dll
    nxmlcommon.dll
    nxmlproc.dll

    Пытаемся выполнить скрипт
    Fatal error: Uncaught exception 'com_exception' with message
    Source: NotesDbDirectory
    Description: Database open failed (%1)' in D:\lotus\bin\lnsender.php:122
    Stack trace:
    #0 D:\lotus\bin\lnsender.php(122): variant->OpenMailDatabase()

    Не находит сервера, видать.

    Запускаю Notespk. Захожу в список серверов -- вижу ошибку:
    "Couldn't get list of servers: Unable to find path to server. To trace this connection,
    use File - Preferences - User Preferences - Ports - Trace (Notes client) or " Trace command (Domino server)"
    package 0x800
    number 3
    flags 0

    Вопрос обновился: "Теперь ищем, где Notes хранит инфу о путях к серверам"
     
  10. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    короче, фпопу такую фикню :blink: это надо создавать names.nsf, настраивать connections и т.п.
    раскручивай CORBA или как Морфей грит, но надо свой СП создавать, а CORBA уже готова и объезжена... правда, на Java :)
    на других не зна...
     
  11. AndryG

    AndryG Гость


    data\USER.id
    data\names.nsf
    domobj.tlb
    icudt18l.dat
    js32.dll
    ltouin22.dll
    ltsci3.tlb
    ndgts.dll
    nlsccstr.dll
    nlsxbe.dll
    nnotes.dll
    nntcp.dll
    notes.ini
    nstrings.dll
    ntcp.dll
    nxmlproc.dll

    Вот такая конфигурация нормально зарегестрировалась на виртуальной машине и даже отправляет письма.

    Радоваться рано ... но ошибки пока не вылетали :)
     
  12. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    хм, а не проще ли написать свой маленький почтовый клиент? примеров по инету полно. Вы , имхо, микроскопом гвозди забиваете.

    поп3/смтп исчо никто не отменял
     
  13. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    Маразм. B)
    Для отсылки почты по SMTP сервер LND не нужен (сервер нужен для приёма). И клиент LN не нужен.
    Пара-тройка строк на паскаКАле, или стандартный java-класс или ещё что..
     
  14. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    здрастьте
    если выше описаные файлы и папки положить с приложением написанном на дельфи, который конектится к базе лотуса
    то приложение будет работать ибез установленного клиента?

    можете по подробнее описать какие шаги надо выполнить для этого
     
  15. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    эта точна
     
  16. AndryG

    AndryG Гость

    Как вы категоричны :)
    SMTP ... POP3 ... это всё здорово. Но у нас корпоративный стандарт - только Notes. И без никаких шлюзов.
    Посему я и колупаю Notes через COM.

    yerke
    Поведаю, как сделал я.
    На моей машине стоит Notes. Всё настроено и работает. Задача: заставить работать COM-сервер Notes на другой машине.
    Для сего оказалось (во всяком случае пока :) ) достаточно:
    на другую машину забрать файлы по списку (выше который)
    notes.ini - отредактировать путь к папке (в самом начале файла)
    зарегестрировать COM-сервер nlsxbe.dll (regsvc32 nlsxbe.dll)

    "Рядом" ложить эти файлы с приложением не обязательно главное COM зарегерить.

    Пример ... моя же тема http://codeby.net/forum/threads/27940.html
     
  17. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    товарисч, кажется вы не понимаете как работает почта... :(
    нотесом в данном случае уже не пахнет. реализация smpt (а это все что вам надо), думаю, существует в других программных стредствах и можно найти простой легкий вариант, который будет понятно и определенно работать, а не так как огрызок Notes'а, который может перестать работать по необъяснимым причинам... кроме того, врядли использование этого куска будет юридически корректным, по крайней мере, без лицензии...
    ну, вот такие мысли по этому поводу...
     
  18. AndryG

    AndryG Гость

    Мы с Вами не понимаем друг-друга ...
    У работников вся почта ходит только в Notes.
    SMTP POP3 и т.д. и т.п. нет таких серверов вообще для простых смертных (админы не в счет).

    Что проще? Научиться отправлять письма в Notes или мудрить с SMTP POP3 и т.д. и т.п.?

    Отчего вам так не нравится мой вариант работы с Notes? (Вопрос "обрезка" оставим за бортом... в конце концов .. можно и полную версию клиента поставить на отдельную машину.)
     
  19. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    почему не нравится обрезок я писал, т.е. не то чтобы не нравится, а то что это может быть не стабильно и не корректно юридически...

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

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

    но тут же я говорю, что это может быть не самый простой вариант, т.е. возможно, ты не сможешь на php реализовать отправку сообщения по smtp, я этого не знаю...

    ЗЫ: POP3 тут вообще не нужно, если ты не принимаешь почту своей программой...

    вообще, я не знаю, что за задача реализовывается... т.е. понятно, что ты используешь PHP, скорее всего это какой-то веб-сервер, с которого шлют заметки, т.е. врядли он будет принимать обратно почту... тут же вопрос, а как работают остальные форумы, и т.п., схожие системы... они тоже реализованы с пом PHP и отправляют почту... врядли огрызками Notes :(
     
  20. AndryG

    AndryG Гость

    С SMTP общался ... и на уровне сокетов почту отправлял ... сей протокол немного мне знаком.

    Вся проблема в том, что начальство моё и начальство моего начальства не даст изменять конфигурацию Domino.

    Я писал выше ... отключены в DOMINO все шлюзы/протоколы/сервера (и SMTP в том числе. Может термин "шлюз" тут не совсем корректен - ненаю). Политика безопасности такова - это корпоративная система/почта и никаких левых общений с внешним миром.

    А огрызок, в данном случае -- это жадность к дисковому пространству :) на и так загруженном серваке :( . Если будет глючить, то скину туда весь каталог клиента да и всё.

    А вообще .. мы уже отвлеклись от темы ;) пора заканчивать ветку ... и возвращаться к битмапам вложений :)
     
Загрузка...

Поделиться этой страницей