• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

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

  • Автор темы AndryG
  • Дата начала
A

AndryG

Доброго.

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

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

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

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

Akupaka

найди notespk, положи его куда-то в папку отдичную от Notes и попробуй запустить...
он тоже работает через COM, начнет материться чего ему не хватает, того и подложишь...
по-идее, для твоей задачи тех же файлов должно хватить...
 
A

AndryG

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

Akupaka

значит кроме дллок ему еще чего-то не хватает...
а попробуй теперь с этими дллками запустить свой код...

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

Akupaka

ищите в клиенте файл notesw32.reg, там всё есть
что-то я там такого не нашел... к стати, регистрация иначе
regsvr32 c:\lotus\notes\nlsxbe.dll
выполняет ее инсталлятор...

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

icudt18l.dat
js32.dll
ltsci3.tlb
ndgts.dll
nlsccstr.dll
nnotes.dll
notes.ini
nstrings.dll
nxmlcommon.dll
nxmlpar.dll

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

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

вот для исследования:
 
A

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
---------------------------

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

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

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

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

morpheus

к стати, регистрация иначе
ну какже

[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х звенной архитектуры?
клиент(винда) - С П - С БД
СП - сервер приложений ( ждет отклика от ваших клиентов и чтото выполняет по запросам )
СБД - сервер БД , собственно сам лотус, куда СП пишет всю инфу.


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

AndryG

а кака насчёт 3х звенной архитектуры?
клиент(винда) - С П - С БД
СП - сервер приложений ( ждет отклика от ваших клиентов и чтото выполняет по запросам )
СБД - сервер БД , собственно сам лотус, куда СП пишет всю инфу.
Эта схема позволит не юзать на клиентах лотусячие либы и не закакивать клиентские тачки.
Немного не понял. У меня стоит задача: отправлять письма, которые генерит сервер.
Сечас:
Сервер генерит текстовые файлы. На моей машине под моим лотусом работает в кроне скрипт и рассылает письма.
Хочу:
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 хранит инфу о путях к серверам"
 
A

Akupaka

короче, фпопу такую фикню :blink: это надо создавать names.nsf, настраивать connections и т.п.
раскручивай CORBA или как Морфей грит, но надо свой СП создавать, а CORBA уже готова и объезжена... правда, на Java :)
на других не зна...
 
A

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

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

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

morpheus

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

поп3/смтп исчо никто не отменял
 
30.05.2006
1 345
12
BIT
0
задача: отправлять письма, которые генерит сервер.
Сечас:
Сервер генерит текстовые файлы. На моей машине под моим лотусом работает в кроне скрипт и рассылает письма.
Маразм. B)
Для отсылки почты по SMTP сервер LND не нужен (сервер нужен для приёма). И клиент LN не нужен.
Пара-тройка строк на паскаКАле, или стандартный java-класс или ещё что..
 
Y

yerke

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

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

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

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

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

AndryG

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

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

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

Пример ... моя же тема https://codeby.net/threads/27940.html
 
A

Akupaka

Но у нас корпоративный стандарт - только Notes. И без никаких шлюзов.
товарисч, кажется вы не понимаете как работает почта... :(
нотесом в данном случае уже не пахнет. реализация smpt (а это все что вам надо), думаю, существует в других программных стредствах и можно найти простой легкий вариант, который будет понятно и определенно работать, а не так как огрызок Notes'а, который может перестать работать по необъяснимым причинам... кроме того, врядли использование этого куска будет юридически корректным, по крайней мере, без лицензии...
ну, вот такие мысли по этому поводу...
 
A

AndryG

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

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

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

Akupaka

почему не нравится обрезок я писал, т.е. не то чтобы не нравится, а то что это может быть не стабильно и не корректно юридически...

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

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

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

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

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

AndryG

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

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

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

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

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!